当前位置 : 主页 > 编程语言 > c++ >

计算a,b,c的排列组合

来源:互联网 收集:自由互联 发布时间:2021-06-23
递归实现,思路的确有点难得想: public void SortAll(List string list, int start, int end) { if (start== end) { foreach ( var item in list) { Console.Write(item); } Console.WriteLine(); } else { for ( int i = start; i end; i++

递归实现,思路的确有点难得想:

        public void SortAll(List<string> list,int start,int end)
        {
            if (start==end)
            {
                foreach (var item in list)
                {
                    Console.Write(item);
                }
                Console.WriteLine();
            }
            else
            {
                for (int i = start; i < end; i++)
                {
                    //交换变量
                    var temp = list[start];
                    list[start] = list[i];
                    list[i] = temp;
                    //递归排序
                    SortAll(list,start+1,end);
                    //还原变量
                    temp = list[start];
                    list[start] = list[i];
                    list[i] = temp;
                }
            }
        }
网友评论