• <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
            <2025年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

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

            常用鏈接

            留言簿(7)

            隨筆分類(lèi)(64)

            隨筆檔案(62)

            文章分類(lèi)(11)

            文章檔案(11)

            相冊(cè)

            BlOoD

            FriEnds

            搞起的人們

            搜索

            •  

            積分與排名

            • 積分 - 118652
            • 排名 - 215

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            ??? 用模板寫(xiě)的一個(gè)歸并排序,并且注明了用歸并排序求逆序數(shù)的方法……

            #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;
            ????????????
            //用歸并排序求逆序數(shù)則在這里添加這句話,num為全局變量
            ????????????
            //num+=前路還沒(méi)有歸并的長(zhǎng)度+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 閱讀(2044) 評(píng)論(3)  編輯 收藏 引用 所屬分類(lèi): Ar!thmEt!c.Self

            FeedBack:
            # re: 歸并排序+求逆序數(shù) 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];
            應(yīng)該為
            T *b=new T[size];

              回復(fù)  更多評(píng)論
              
            # re: 歸并排序+求逆序數(shù) 2009-04-11 00:45 cx968968
            if(a[i]<=b[j])
            b[l++]=a[i++];
            應(yīng)改為
            if(a[i]<=a[j])
            b[l++]=a[i++];  回復(fù)  更多評(píng)論
              
            # re: 歸并排序+求逆序數(shù) 2009-09-23 20:27 朱镕基
            這是什么呀 還好意思說(shuō) 逆序數(shù) 逆序數(shù)是什么 請(qǐng)查查再說(shuō)   回復(fù)  更多評(píng)論
              
            99久久国产综合精品成人影院| 久久久久久久99精品免费观看| 久久成人国产精品免费软件| 无码国内精品久久人妻麻豆按摩| 欧美日韩精品久久久久| 精品久久久久久无码专区| 欧美激情精品久久久久久久九九九 | 欧美亚洲国产精品久久| 久久国产精品成人片免费| 久久久久无码中| 久久福利青草精品资源站| 国产A三级久久精品| 国产精品一区二区久久精品无码 | 亚洲va久久久噜噜噜久久男同 | 久久婷婷色综合一区二区| 99久久精品国产毛片| 久久综合综合久久综合| 亚洲欧美日韩久久精品| 久久精品成人影院| 久久精品九九亚洲精品天堂| av色综合久久天堂av色综合在| 国产精品免费久久久久电影网| 97热久久免费频精品99| 少妇高潮惨叫久久久久久| 久久99久久99精品免视看动漫| 亚洲а∨天堂久久精品9966| 久久综合九色综合97_久久久| 久久久一本精品99久久精品66 | 久久久久国产一区二区三区| 色综合久久久久| 国产综合成人久久大片91| 伊人丁香狠狠色综合久久| 色综合久久中文色婷婷| 热99re久久国超精品首页| 99久久精品费精品国产| 国内精品久久久久久久coent| 国产成人久久777777| 久久精品无码一区二区app| 久久男人中文字幕资源站| 欧美性大战久久久久久| 一级a性色生活片久久无少妇一级婬片免费放 |