• <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>

            liyuxia713

            蹣跚前行者

            常用鏈接

            統(tǒng)計

            Algorithms

            C++

            最新評論

            從數(shù)組中同時取出最大最小元素

            算法思想:先相鄰兩個兩個比較,較大的放入數(shù)組max[],較小的放入數(shù)組min[],然后從max[]數(shù)組求出最大,min[]數(shù)組求出最小即可。
            比較n+[(n+1)/2] =1.5n次

             1#include <iostream>
             2#define n 11
             3#define m ((n+1)/2)
             4using namespace std;
             5
             6void main(void)
             7{
             8    int num[] = {11,2,3,4,6,5,7,8,9,10,20};
             9    //int n = sizeof(num)/sizeof(num[0]);
            10    //int m = (n+1)/2;
            11    int max[m] , min[m];
            12    int k = 0, j = 0;
            13
            14    if(n/2 != 0) max[m-1= min[m-1= num[n-1];
            15    
            16    for (int i=0; i < n-1; i = i+2)
            17    {
            18        if (num[i] >= num[i+1])
            19        {
            20            max[j++= num[i];            
            21            min[k++= num[i+1];            
            22        }

            23        else
            24        {
            25            max[j++= num[i+1];
            26            min[k++= num[i];
            27        }

            28
            29    }

            30    
            31    for( i=0; i< m; i++)
            32    {
            33        cout << "max[" << i << "] = " << max[i] << "\t";
            34        cout << "min[" << i << "] = " << min[i] <<endl;
            35    }

            36
            37    int MAX = max[0];
            38    int MIN = min[0];
            39    
            40     for ( j = 1; j < m; j++)
            41    {
            42        if (max[j] > MAX) MAX = max[j];
            43        if (min[j] < MIN) MIN = min[j];
            44    }

            45
            46    cout << "MAX = " << MAX << ", MIN = " << MIN <<endl;
            47}

            posted on 2009-04-14 10:11 幸運草 閱讀(2485) 評論(6)  編輯 收藏 引用 所屬分類: Algorithms

            評論

            # re: 從數(shù)組中同時取出最大最小元素 2009-11-20 08:19 zzy

            不能直接用2N的算法么?加個min , max
            qq 598670623  回復  更多評論   

            # re: 從數(shù)組中同時取出最大最小元素 2009-11-20 11:25 幸運草

            @zzy
            算法嘛,不應只考慮得出結果,而是要找出最優(yōu)方案的吧  回復  更多評論   

            # re: 從數(shù)組中同時取出最大最小元素 2011-03-23 19:57 。。。。。

            這個又沒要求排序,申請兩個變量,將第一個值賦給變量,一次循環(huán)比較,大了給a,小了給b,結果輸出a,b就行了。。。  回復  更多評論   

            # re: 從數(shù)組中同時取出最大最小元素 2011-04-05 21:13 幸運草

            @。。。。。
            這樣確實也可以,但是你算了比較的次數(shù)么?2n啊, 效率相對會低。  回復  更多評論   

            # re: 從數(shù)組中同時取出最大最小元素 2012-09-04 20:05 喝喝

            當數(shù)組n為偶數(shù)時?  回復  更多評論   

            # re: 從數(shù)組中同時取出最大最小元素 2012-09-07 16:22 liyuxia713

            偶數(shù)也行啊,對此沒有要求。 @喝喝
              回復  更多評論   

            亚洲国产精品综合久久网络| 国内精品伊人久久久久av一坑| Xx性欧美肥妇精品久久久久久| 亚洲综合婷婷久久| 久久人人爽人爽人人爽av| 日本久久久久亚洲中字幕| 国产精品99久久不卡| 浪潮AV色综合久久天堂| 99久久精品免费国产大片| 亚洲国产精品久久久天堂| 久久久91人妻无码精品蜜桃HD| 嫩草伊人久久精品少妇AV| 久久精品国产亚洲5555| 99国产精品久久| 亚洲AV无一区二区三区久久 | 亚洲午夜精品久久久久久app| 新狼窝色AV性久久久久久| 久久国产热这里只有精品| 久久久久人妻一区精品性色av| 久久久久无码中| 天天综合久久久网| 大伊人青草狠狠久久| 欧洲精品久久久av无码电影| 久久无码中文字幕东京热| 久久久久亚洲av毛片大| 久久国产高清一区二区三区| 久久久久国产精品| 香蕉久久一区二区不卡无毒影院| 久久久久久久人妻无码中文字幕爆| 久久精品视频一| 国产免费久久精品99re丫y| 久久99热这里只有精品66| 欧美精品一区二区久久| 无码人妻久久一区二区三区蜜桃| 99久久精品无码一区二区毛片| 好久久免费视频高清| 国产精品一区二区久久精品| 亚洲精品高清国产一久久| 99久久精品九九亚洲精品| 久久无码一区二区三区少妇| 久久人人爽人人爽人人片AV东京热|