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

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

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

    First they ignore you
    then they ridicule you
    then they fight you
    then you win
        -- Mahatma Gandhi
    Chinese => English     英文 => 中文             
    隨筆-221  評論-1047  文章-0  trackbacks-0
    今天看到迅雷的一個筆試題,一時手癢,便拿來試試,具體題目是這樣的:
    請打印出一個字符串中所有字母的全排列結果,比如輸入字符串abc,則打印出abc, acb, bac, bca, cab, cba

    下面是我的解法,由于時間倉促,沒有仔細研究,無法保證這是最優的

    package ?edu.ecust.test;

    import ?java.util.ArrayList;
    import ?java.util.Iterator;
    import ?java.util.List;

    public ? class ?Test? {
    ????
    public ? static ? void ?main(String[]?args)? {
    ????????System.out.println(range(
    " abc " ));
    ????}

    ????
    ????
    public ? static ?List < String > ?range(String?str)? {
    ????????
    if ?( 1 ? == ?str.length())? {
    ????????????List
    < String > ?result? = ? new ?ArrayList < String > ();
    ????????????result.add(str);
    ????????????
    return ?result;
    ????????}

    ????????
    ????????
    char []?chars? = ?str.toCharArray();
    ????????
    ????????List
    < String > ?result? = ? new ?ArrayList < String > ();
    ????????
    for ?( int ?i? = ? 0 ,?n? = ?chars.length;?i? < ?n;?i ++ )? {
    ????????????
    char []?swapedChars? = ?swapElems(i,?chars);
    ????????????
    char ?c? = ?swapedChars[ 0 ];
    ????????????
    char []?remainChars? = ? new ? char [swapedChars.length? - ? 1 ];
    ????????????System.arraycopy(swapedChars,?
    1 ,?remainChars,? 0 ,?swapedChars.length? - ? 1 );
    ????????????String?remainStr?
    = ? new ?String(remainChars);
    ????????????List
    < String > ?partialResult? = ?range(remainStr);
    ????????????
    ????????????
    for ?(Iterator < String > ?it? = ?partialResult.iterator();?it.hasNext();?)? {
    ????????????????result.add(c?
    + ?it.next());
    ????????????}

    ????????}

    ????????
    ????????
    return ?result;
    ????}

    ????
    ????
    public ? static ? char []?swapElems( int ?index,? char []?array)? {
    ????????
    char []?chars? = ? new ? char [array.length];
    ????????System.arraycopy(array,?
    0 ,?chars,? 0 ,?array.length);
    ????????
    char ?c? = ?chars[index];
    ????????
    for ?( int ?i? = ?index? - ? 1 ;?i? >= ? 0 ;?i -- )? {
    ????????????chars[i?
    + ? 1 ]? = ?chars[i];
    ????????}

    ????????chars[
    0 ]? = ?c;
    ????????
    return ?chars;
    ????}

    }
    posted on 2006-11-03 19:07 山風小子 閱讀(3089) 評論(5)  編輯  收藏 所屬分類: Algorithm
    主站蜘蛛池模板: 亚洲色成人中文字幕网站| 亚洲AV日韩精品久久久久久久| 亚洲国产成人久久| 伊人免费在线观看| 国产精品极品美女免费观看| 亚洲色四在线视频观看| www成人免费视频| 免费观看大片毛片| 久久久久亚洲精品日久生情 | 99国产精品免费视频观看| 深夜国产福利99亚洲视频| 亚洲精品国产日韩| 3344永久在线观看视频免费首页| 成人亚洲性情网站WWW在线观看| 亚洲精品无码不卡在线播放| 91制片厂制作传媒免费版樱花| 亚洲中文字幕第一页在线| 福利片免费一区二区三区| 最新中文字幕免费视频| 亚洲男人的天堂在线| 可以免费观看的毛片| 国产亚洲精品国看不卡| 曰批全过程免费视频观看免费软件| 成人黄动漫画免费网站视频| 亚洲国产精品无码久久久| 99热在线精品免费播放6| 亚洲AV日韩AV天堂一区二区三区| 成人A毛片免费观看网站| 亚洲人成人网站在线观看| 在线观看亚洲电影| 国产最新凸凹视频免费| 国产 亚洲 中文在线 字幕| 可以免费看黄的网站| 亚洲免费闲人蜜桃| 91精品免费久久久久久久久| 久久精品国产亚洲av日韩| 三年片在线观看免费大全电影 | 亚洲av区一区二区三| AV激情亚洲男人的天堂国语| 免费毛片在线视频| 亚洲AV无码AV男人的天堂不卡|