首页 > 其他 > 详细

[原创]:排列(组合)算法的实现:

时间:2014-02-22 00:25:09      阅读:380      评论:0      收藏:0      [点我收藏+]

排列(组合)算法的实现:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/// <summary>
   /// 递归算法求排列
   /// </summary>
   /// <typeparam name="T">泛型类型</typeparam>
   /// <param name="array"></param>
   /// <param name="startIndex"></param>
   /// <param name="endIndex"></param>
   public static void GetPermutation<T>(T[] array, int startIndex, int endIndex)
   {
       if (startIndex == endIndex)
       {
           StringBuilder temp = new StringBuilder();
 
           foreach (var item in array)
           {
               temp.Append(item.ToString());
           }
 
           Console.WriteLine(temp.ToString());
       }
       else
       {
           for (int i = startIndex; i <= endIndex; i++)
           {
               Swap(ref array[startIndex], ref array[i]);
               GetPermutation<T>(array, startIndex + 1, endIndex);
               Swap(ref array[i], ref array[startIndex]);
           }
       }
   }

  

 

refer: 

http://www.cnblogs.com/snowdust/archive/2010/01/20/1652161.html

http://blog.csdn.net/lcl_data/article/details/5286847

http://yuyangc0008.blog.163.com/blog/static/54754220138492632191/

好文章:

http://www.cnblogs.com/Dah/archive/2007/04/14/572183.html

[原创]:排列(组合)算法的实现:

原文:http://www.cnblogs.com/Jessy/p/3559354.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!