搜尋

首頁  >  問答  >  主體

java - 请问这种排列算法的难度在什么水平?

https://segmentfault.com/q/10... 这个问题中有四种对4位整型数组进行排列组合的算法,一个一个按照运行顺序写下来觉得很有意思,我肯定直接写不出来,想问一下算法界的大神们,这种算法大概是什么水平的?如果是很简单的那种,我大概真的要去补一下了...另外,除了死记硬背,这么刁钻的设计是怎么想出来的...

伊谢尔伦伊谢尔伦2802 天前580

全部回覆(1)我來回復

  • 巴扎黑

    巴扎黑2017-04-18 10:50:09

    全排列的過程可以當成樹的遍歷過程,每個葉子節點就是一種排列,只不過要注意的是每個子樹的邊不能和父節點的邊重複。
    樹的遍歷過程好辦,或遞歸或用棧或隊列甚至另外設定個保存狀態的數組都行,子樹的邊不能和父節點邊重複的問題也好辦,遍歷子樹的時候只遍歷available的,並且遍歷後做標記就可以了。
    我覺得這個問題轉換成樹就好辦了,實現各種各樣都可以吧。

    回覆
    0
  • 取消回覆