posts - 403, comments - 310, trackbacks - 0, articles - 7
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          全排列的非遞歸版本

          Posted on 2007-07-31 11:58 ZelluX 閱讀(471) 評論(0)  編輯  收藏 所屬分類: Algorithm
          from smth.org

          = malloc(n * sizeof(int));
          for (i = 0; i < n; i++)
             p[i] 
          = i;

          output(p, n);

          for (i = n - 1; i > 0; i--)
             
          if (p[i] > p[i - 1])
             {
                
          for (j = n - 1; p[j] < p[i - 1]; j--);
                swap(
          &(p[i - 1]), &(p[j]));

                
          for (j = i, k = n - 1; j < k; j++, k--)
                   swap(
          &(p[j]), &(p[k]));

                ouput(p, n);
                i 
          = n;
             }

          free(p);

          主站蜘蛛池模板: 台江县| 同心县| 保康县| 韶关市| 敦煌市| 平乡县| 万全县| 通化市| 定远县| 永和县| 香港| 文水县| 阿鲁科尔沁旗| 安宁市| 灵山县| 徐州市| 阿勒泰市| 高淳县| 雷山县| 乌兰察布市| 西乌珠穆沁旗| 区。| 宁波市| 曲麻莱县| 长岭县| 阳山县| 南涧| 武汉市| 汉中市| 五大连池市| 错那县| 专栏| 宝清县| 灌云县| 吉林省| 郸城县| 济源市| 桐乡市| 靖边县| 马山县| 静乐县|