★★★★★ 龍門亂彈 ★★★★★

          ▓木浮于水,而皓月當空▓ 關注Java程序設計▓Linux系統▓人工智能(AI)進展▓數學▓

            BlogJava :: 首頁 :: 新隨筆 ::  :: 聚合  :: 管理 ::
            39 隨筆 :: 2 文章 :: 170 評論 :: 0 Trackbacks
          public?String[]?getAll(int[]?array)?{
          ????????
          int?n?=?Array.getLength(array);
          ????????
          int?total?=?(int)?Math.pow(2,?n);
          ????????Logger?log?
          =?Logger.getLogger("myLog");
          ????????log.info(
          "?the??total?:"?+?total);
          ????????String[]?outArray?
          =?new?String[total];
          ????????
          for?(int?i?=?0;?i?<?total;?i++)?{
          ????????????StringBuffer?bs?
          =?new?StringBuffer("");
          ????????????
          for?(int?j?=?0;?j?<?n;?j++)?{
          ????????????????
          if?(((i?>>?j)?%?2)?==?1)?{
          ????????????????????bs.append(String.valueOf(Array.
          get(array,?j)));
          ????????????????}
          ????????????}
          ????????????outArray[i]?
          =?bs.toString();
          ????????}
          ????????
          return?outArray;
          ????}


          以上代碼把生成的子集存放到一個字符串數組中,當集合的基數很大時,需要很大內存, 可以根據需要把上面程序改改不要放到數組中,而是邊生成邊使用.


          posted on 2005-09-13 11:07 LoveBNU 小六 WangBNU 閱讀(817) 評論(0)  編輯  收藏 所屬分類: Java編程算法之妙
          主站蜘蛛池模板: 高雄市| 伊通| 甘德县| 荣昌县| 施甸县| 利辛县| 明星| 东宁县| 汤阴县| 崇信县| 横山县| 静海县| 乌拉特中旗| 沙坪坝区| 宽甸| 壤塘县| 樟树市| 老河口市| 德化县| 安庆市| 新竹市| 黄冈市| 凉城县| 称多县| 思南县| 安溪县| 朝阳市| 渝中区| 滨海县| 宣汉县| 太仓市| 疏附县| 乃东县| 海盐县| 汉沽区| 甘南县| 梨树县| 萍乡市| 深圳市| 岐山县| 仲巴县|