• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 62  文章 - 257  trackbacks - 0
            <2006年11月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            I Love Programming & Music.... CS Became CSed....

            常用鏈接

            留言簿(7)

            隨筆分類(64)

            隨筆檔案(62)

            文章分類(11)

            文章檔案(11)

            相冊

            BlOoD

            FriEnds

            搞起的人們

            搜索

            •  

            積分與排名

            • 積分 - 116495
            • 排名 - 215

            最新評論

            閱讀排行榜

            評論排行榜

            ??? 用模板寫的一個歸并排序,并且注明了用歸并排序求逆序數的方法……

            #include?<stdio.h>

            template?
            <?class?T?>
            void?mergeSort(?T?*a,?int?size?)
            {
            ????
            int?*b=new?T[size];
            ????mergePass(a,b,
            0,size-1);
            }


            template?
            <?class?T?>
            void?mergePass(?T?*a,?T?*b,?int?l,?int?r?)
            {
            ????
            int?m;
            ????
            if(l<r)
            ????
            {
            ????????m
            =(l+r)/2;
            ????????mergePass(a,b,l,m);
            ????????mergePass(a,b,m
            +1,r);
            ????????merge(a,b,l,m,r);
            ????????copy(a,b,l,r);
            ????}

            }


            template?
            <?class?T?>
            void?merge(?T?*a,?T?*b,?int?l,?int?m,?int?r?)
            {
            ????
            int?i=l,j=m+1;
            ????
            while(i<=m&&j<=r)
            ????
            {
            ????????
            if(a[i]<=b[j])
            ????????????b[l
            ++]=a[i++];
            ????????
            else
            ????????
            {
            ????????????b[l
            ++]=a[j++];
            ????????????
            //num+=m-i+1;
            ????????????
            //用歸并排序求逆序數則在這里添加這句話,num為全局變量
            ????????????
            //num+=前路還沒有歸并的長度+1
            ????????}

            ????}

            ????
            while(i<=m)
            ????????b[l
            ++]=a[i++];
            ????
            while(j<=r)
            ????????b[l
            ++]=a[j++];
            }


            template?
            <?class?T?>
            void?copy(?T?*a,?T?*b,?int?l,?int?r?)
            {
            ????
            while(l<=r)
            ????
            {
            ????????a[l]
            =b[l];
            ????????l
            ++;
            ????}

            }


            int?main()
            {
            ????
            int?a[10]={10,9,8,7,6,5,4,3,2,1},i;
            ????mergeSort(a,
            10);
            ????
            for(i=0;i<10;i++)
            ????????printf(
            "%d?",a[i]);
            ????putchar(
            '\n');
            ????
            return?0;
            }
            posted on 2006-10-26 23:01 Asp 閱讀(2030) 評論(3)  編輯 收藏 引用 所屬分類: Ar!thmEt!c.Self

            FeedBack:
            # re: 歸并排序+求逆序數 2007-11-26 21:15 ACLover
            void mergeSort( T *a, int size )
            {
            int *b=new T[size];
            mergePass(a,b,0,size-1);
            }
            該行
            int *b=new T[size];
            應該為
            T *b=new T[size];

              回復  更多評論
              
            # re: 歸并排序+求逆序數 2009-04-11 00:45 cx968968
            if(a[i]<=b[j])
            b[l++]=a[i++];
            應改為
            if(a[i]<=a[j])
            b[l++]=a[i++];  回復  更多評論
              
            # re: 歸并排序+求逆序數 2009-09-23 20:27 朱镕基
            這是什么呀 還好意思說 逆序數 逆序數是什么 請查查再說   回復  更多評論
              
            久久综合精品国产二区无码| 天堂无码久久综合东京热| 欧美精品丝袜久久久中文字幕 | 亚洲一区精品伊人久久伊人| 国产成人精品久久免费动漫| 97久久超碰国产精品旧版| 午夜天堂av天堂久久久| 久久一区二区三区免费| 久久se这里只有精品| 国产成人综合久久精品尤物| 色综合合久久天天综合绕视看| 亚洲国产精品久久电影欧美| 2019久久久高清456| 久久久久波多野结衣高潮| 亚洲AV日韩AV天堂久久| 国产精品岛国久久久久| 大蕉久久伊人中文字幕| 国产呻吟久久久久久久92| 亚洲欧美久久久久9999| 99久久无色码中文字幕人妻| 亚洲精品无码成人片久久| 91精品国产91久久久久福利| 狠狠88综合久久久久综合网| 久久久91精品国产一区二区三区 | 国产精品成人精品久久久| 99久久免费国产精品| 性做久久久久久久久浪潮| 国产成人久久精品一区二区三区| 久久精品国产亚洲av水果派| 97超级碰碰碰碰久久久久| 久久精品国产72国产精福利| 久久久亚洲裙底偷窥综合| 国产麻豆精品久久一二三| 亚洲欧洲久久av| 99国产精品久久久久久久成人热| 午夜不卡888久久| 无码人妻久久一区二区三区蜜桃| 久久久久亚洲AV无码网站| 久久er国产精品免费观看8| 无码人妻少妇久久中文字幕蜜桃| 狠狠狠色丁香婷婷综合久久俺|