java - 请问这种排列算法的难度在什么水平?
伊谢尔伦
伊谢尔伦 2017-04-18 10:48:09
0
1
526

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

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(1)
巴扎黑

全排列的过程可以当成树的遍历过程,每个叶子节点就是一种排列,只不过要注意的是每个子树的边不能和父节点的边重复。
树的遍历过程好办,或递归或用栈或队列甚至另外设置个保存状态的数组都行,子树的边不能和父节点边重复的问题也好办,遍历子树的时候只遍历available的,并且遍历后做标记就可以了。
我觉得这个问题转换成树就好办了,实现各种各样都可以吧。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!