日期:2014-05-18  浏览次数:20836 次

数组元素全部排列组合
如数组中的元素为a,b,c
则全部排列组合为
a,b,c
a,c,b
b,a,c
b,c,a
c,a,b
c,b,a
在未知数组元素的情况下怎样实现全部排列组合?
我的思路是用递归,在元素个数为一时,不组合,排列为二时,分别在开头和结束时插入第2个元素,取出所有组合。在元素为大于2时,在能插入的所有地方插入大于原数组长度1的元素。。。
实现起来比较复杂。
又比较好的方法吗?

------解决方案--------------------
mark
------解决方案--------------------
给出的元素会不会重复啊?
------解决方案--------------------
看我发的这个帖: http://topic.csdn.net/u/20081015/09/524c5d5f-d4c8-4715-bfbb-c8076d921fa5.html
------解决方案--------------------
楼主的方法会有重复的操作,可以思考下其他的方法,不过我还没思考出好的方法
------解决方案--------------------
探讨
全部元素的排列,更正下,每次都需要全部的元素