成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java - 請(qǐng)問(wèn)這種排列算法的難度在什么水平?

瀏覽:103日期:2024-02-07 11:53:09

問(wèn)題描述

https://segmentfault.com/q/10... 這個(gè)問(wèn)題中有四種對(duì)4位整型數(shù)組進(jìn)行排列組合的算法,一個(gè)一個(gè)按照運(yùn)行順序?qū)懴聛?lái)覺(jué)得很有意思,我肯定直接寫不出來(lái),想問(wèn)一下算法界的大神們,這種算法大概是什么水平的?如果是很簡(jiǎn)單的那種,我大概真的要去補(bǔ)一下了...另外,除了死記硬背,這么刁鉆的設(shè)計(jì)是怎么想出來(lái)的...

問(wèn)題解答

回答1:

全排列的過(guò)程可以當(dāng)成樹(shù)的遍歷過(guò)程,每個(gè)葉子節(jié)點(diǎn)就是一種排列,只不過(guò)要注意的是每個(gè)子樹(shù)的邊不能和父節(jié)點(diǎn)的邊重復(fù)。 樹(shù)的遍歷過(guò)程好辦,或遞歸或用棧或隊(duì)列甚至另外設(shè)置個(gè)保存狀態(tài)的數(shù)組都行,子樹(shù)的邊不能和父節(jié)點(diǎn)邊重復(fù)的問(wèn)題也好辦,遍歷子樹(shù)的時(shí)候只遍歷available的,并且遍歷后做標(biāo)記就可以了。 我覺(jué)得這個(gè)問(wèn)題轉(zhuǎn)換成樹(shù)就好辦了,實(shí)現(xiàn)各種各樣都可以吧。

標(biāo)簽: java
相關(guān)文章: