文章詳情頁
java - 請問這種排列算法的難度在什么水平?
瀏覽:79日期:2024-02-07 11:53:09
問題描述
https://segmentfault.com/q/10... 這個問題中有四種對4位整型數組進行排列組合的算法,一個一個按照運行順序寫下來覺得很有意思,我肯定直接寫不出來,想問一下算法界的大神們,這種算法大概是什么水平的?如果是很簡單的那種,我大概真的要去補一下了...另外,除了死記硬背,這么刁鉆的設計是怎么想出來的...
問題解答
回答1:全排列的過程可以當成樹的遍歷過程,每個葉子節點就是一種排列,只不過要注意的是每個子樹的邊不能和父節點的邊重復。 樹的遍歷過程好辦,或遞歸或用棧或隊列甚至另外設置個保存狀態的數組都行,子樹的邊不能和父節點邊重復的問題也好辦,遍歷子樹的時候只遍歷available的,并且遍歷后做標記就可以了。 我覺得這個問題轉換成樹就好辦了,實現各種各樣都可以吧。
標簽:
java
相關文章:
1. javascript - node.js promise沒用2. golang - 用IDE看docker源碼時的小問題3. yii2中restful配置好后在nginx下報404錯誤4. 算法 - python 給定一個正整數a和一個包含任意個正整數的 列表 b,求所有<=a 的加法組合5. android 如何實現如圖中的鍵盤上的公式及edittext的內容展示呢6. java - 我在用Struts2上傳文件時,報以下錯誤怎么回事?7. c++ - 如何正確的使用QWebEngineView?8. PHP注冊功能9. mysql - 求SQL語句10. MySQL如何實現表中再嵌套一個表?
排行榜
