<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
    數(shù)據(jù)加載中……

    全排列的遞歸算法

    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數(shù)字做為第一個
    perm(list,i+1,n);
    SWAP(list[i],list[j],temp); //將第j數(shù)字換回原來位置,準(zhǔn)備用第j+1個做做為第一個

    }
    -----------------------------------------------------------
    建議你將函數(shù)修改成以下形式,自己觀察一下
    -----------------------------------------------------------
    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 小鋒 閱讀(457) 評論(0)  編輯  收藏 所屬分類: algorithm

    主站蜘蛛池模板: 亚洲精品在线视频观看| 伊人久久亚洲综合| 亚洲av无码一区二区三区天堂古代| 三级网站免费观看| 亚洲人成在线播放网站| 国产人成网在线播放VA免费| 国产乱辈通伦影片在线播放亚洲 | 久久国产高潮流白浆免费观看| 亚洲av中文无码乱人伦在线r▽| 另类免费视频一区二区在线观看| 亚洲精品无码成人片久久| 少妇性饥渴无码A区免费 | 女人被男人躁的女爽免费视频| 91丁香亚洲综合社区| 日本不卡在线观看免费v| 青青视频免费在线| 国产成人麻豆亚洲综合无码精品 | 又粗又大又长又爽免费视频| 一级一黄在线观看视频免费| 亚洲另类激情综合偷自拍图| 51精品视频免费国产专区| 亚洲一欧洲中文字幕在线| 国产一级理论免费版| 国产精品小视频免费无限app| 亚洲国产成人久久精品动漫 | 免费能直接在线观看黄的视频| 亚洲综合精品第一页| 亚洲国产天堂久久综合| 嫩草成人永久免费观看| 亚洲sss综合天堂久久久| 亚洲国产精品成人| 免费不卡在线观看AV| 亚洲色少妇熟女11p| 亚洲乱码一区二区三区在线观看| 7723日本高清完整版免费| 另类小说亚洲色图| 精品亚洲成a人片在线观看| 国产精品免费小视频| 久99久精品免费视频热77| 亚洲乱色伦图片区小说| 亚洲AV无码久久|