职业教育新东方网 > 职业教育 > 计算机 > 软件考试 > 初级资格 > 程序员 > 文章正文

2011年软考程序员算法实例:全排列的递归算法

分享到:

2011-10-28 09:20  作者:  来源:互联网  字号:T|T

  using System;

  namespace TotalSort

  {

  /**////

  /// 全排列的递归算法

  ///

  class Class1

  {

  /**////

  /// 应用程序的主入口点。

  ///

  [STAThread]

  static void Main(string[] args)

  {

  //char[] s = "abcdefghijklmnopqrstuvwxyz".ToCharArray();

  char[] s = "abcde".ToCharArray();

  TotalSort(s, 0);

  Console.WriteLine("\n\n总数:{0}", resultCount);

  Console.ReadLine();

  }

  static int resultCount = 0;

  public static void TotalSort(char[] list, int start) {

  int end = list.Length - 1;

  if (start == end) {

  resultCount++;

  Console.WriteLine(list);

  }

  else {

  for (int i = start; i <= end; i++) {

  char[] temp = new char[list.Length];

  list.CopyTo(temp, 0);

  char tempc = temp[start];

  temp[start] = temp[i];

  temp[i] = tempc;

  TotalSort(temp, start + 1);

(责任编辑:单月)

 

全排列 软考 start char 递归 相关文章导读

热点课讯

精彩问答

提问