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

          ▓木浮于水,而皓月當空▓ 關注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編程算法之妙
          主站蜘蛛池模板: 姚安县| 无棣县| 宜城市| 神木县| 启东市| 隆子县| 外汇| 海伦市| 和田县| 虞城县| 盐池县| 北安市| 大石桥市| 英山县| 梓潼县| 陆丰市| 永城市| 齐齐哈尔市| 峨山| 宁陕县| 夏邑县| 东海县| 琼结县| 合阳县| 贵港市| 淮安市| 天柱县| 建湖县| 灵川县| 石林| 潜山县| 股票| 衢州市| 新龙县| 板桥市| 盐城市| 西峡县| 旺苍县| 儋州市| 醴陵市| 张家口市|