c語(yǔ)言全排列遞歸算法 有誰(shuí)會(huì)用遞歸做全排列???
有誰(shuí)會(huì)用遞歸做全排列???proc(int step)函數(shù)用于實(shí)現(xiàn)遞歸的主過(guò)程,step參數(shù)用于指示當(dāng)前proc函數(shù)中放置的置換數(shù)。使用的數(shù)組用于標(biāo)記某個(gè)數(shù)字是否出現(xiàn)在上一次完全置換中。如果它出現(xiàn)了,就
有誰(shuí)會(huì)用遞歸做全排列?。?/h2>
proc(int step)函數(shù)用于實(shí)現(xiàn)遞歸的主過(guò)程,step參數(shù)用于指示當(dāng)前proc函數(shù)中放置的置換數(shù)。使用的數(shù)組用于標(biāo)記某個(gè)數(shù)字是否出現(xiàn)在上一次完全置換中。如果它出現(xiàn)了,就不能再完全排列了。如果它沒(méi)有出現(xiàn),它將被放入完全排列中,并用所用的數(shù)組進(jìn)行標(biāo)記。并在回溯過(guò)程中清除已用標(biāo)志。結(jié)果數(shù)組用于保存n個(gè)完全置換。如果proc函數(shù)已經(jīng)完成了n個(gè)數(shù)字的輸入,那么print函數(shù)將被調(diào)用以打印出完整的排列。