<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Feng.Li's Java See

    抓緊時間,大步向前。
    隨筆 - 95, 文章 - 4, 評論 - 58, 引用 - 0
    數據加載中……

    全排列的遞歸算法

    void perm(char *list, int i, int n){
    int j,temp;
    if(i == n){
    for(j = 0; j < n; j++)
    cout<<list[j];
    cout<<" ";
    }
    else{
    for(j = i; j < n; j++){
    SWAP(list[i],list[j],temp);
    perm(list,i+1,n);
    SWAP(list[i],list[j],temp);
    }

    for(j = i; j < n; j++){
    SWAP(list[i],list[j],temp); //將第j數字做為第一個
    perm(list,i+1,n);
    SWAP(list[i],list[j],temp); //將第j數字換回原來位置,準備用第j+1個做做為第一個

    }
    -----------------------------------------------------------
    建議你將函數修改成以下形式,自己觀察一下
    -----------------------------------------------------------
    void perm(char *list, int i, int n){
    int j,temp;
    for(j = 0; j < n; j++)
    cout<<list[j]<<endl;
    if(i == n){
    for(j = 0; j < n; j++)
    cout<<list[j];
    cout<<" "<<i=n了<<" ";
    }
    else{
    for(j = i; j < n; j++){
    SWAP(list[i],list[j],temp);
    perm(list,i+1,n);
    SWAP(list[i],list[j],temp);

    }
    ========================================================================================================

    下面是完整的程序:C#

    using System;
    using System.Collections.Generic;
    using System.Text;

    namespace Test
    {
        class Program
        {
            static void Main(string[] args)
            {
                char[] list = {'a','b','c','d' };
                perm(list, 0, 4);
                Console.ReadLine();
            }
            static void perm(char[] list, int i, int n)
            {
                int j,temp;
                if(i==n)
                {
                 
                    for(j=0;j<n;j++)
                    {
                        Console.Write(list[j]);
                        //Console.WriteLine();
                    }
                }
                else

                   
                {
                   
                    for (j=i;j<n;j++)
                    {
                        swap(ref list[i],ref list[j]);
                        perm(list,i+1,n);
                        swap(ref list[i], ref list[j]);
                    }
                }
            }
            static void swap(ref char  a, ref char  b)
            {
                char c = a;
                a = b;
                b = c;
               
              
            }
        }
    }


    posted on 2007-10-09 08:58 小鋒 閱讀(455) 評論(0)  編輯  收藏 所屬分類: algorithm

    主站蜘蛛池模板: 四虎成人免费大片在线| 在线a级毛片免费视频| 国产午夜亚洲不卡| 特级做a爰片毛片免费看| 亚洲AV中文无码乱人伦在线视色| 亚洲人成网站色7799| 在线a毛片免费视频观看| 蜜桃传媒一区二区亚洲AV| 亚洲av高清在线观看一区二区| 色www免费视频| 在线日韩日本国产亚洲| 日韩免费的视频在线观看香蕉| 亚洲视频在线观看免费视频| 久视频精品免费观看99| 亚洲18在线天美| 国产精品冒白浆免费视频| 又黄又大的激情视频在线观看免费视频社区在线 | 在线亚洲精品自拍| 日韩电影免费在线观看中文字幕| 亚洲AV无码成人精品区天堂| **aaaaa毛片免费| 亚洲av无码专区青青草原| 免费国产精品视频| 搡女人免费免费视频观看| 亚洲国产人成在线观看| 真实乱视频国产免费观看 | 99ri精品国产亚洲| 永久中文字幕免费视频网站| 永久免费无码网站在线观看个| 亚洲成AV人片一区二区| 69成人免费视频| 猫咪www免费人成网站| 亚洲av无码不卡| 午夜免费福利影院| 高清永久免费观看| 国产成人精品日本亚洲专一区| 免费中文字幕在线观看| 亚洲精品免费观看| 成人精品综合免费视频| 亚洲精品国产啊女成拍色拍| 国产又粗又长又硬免费视频|