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

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

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

    隨筆-28  評論-51  文章-10  trackbacks-0
    用遞歸法(尾遞歸)求最多元素,即找出出現次數大于n/2的元素
    基于原理:去掉兩個不同的元素,剩下數組里的最多元素仍然是整個數組的最多元素(如果存在的話)

     1 #include <stdio.h>
     2 int majority(int [], int,int );
     3 
     4 int main()
     5 {
     6     int i = 0;
     7     int c = 0;
     8     int data [] = {3,5,5,2,2,2,2};
     9     int maj = majority(data,1 ,7);
    10     for( ; i < 7; i++)
    11     {
    12         if(maj == data[i])
    13            c++;
    14     }    
    15     printf("The majority num of this array is: %d\n", c>3?maj:-1);
    16     return 0;
    17 }
    18 /*s for the begining index, and e for the ending index
    19 * * find the cadidate num of majority*/
    20 int majority(int data[], int s, int e)//begin s = 1, e = n(including)
    21 {
    22     int c = 1;// count the candidate majority num
    23     int j; //fot the index move on
    24     int i = 0;
    25     for( j = s; j< e; j++)
    26     {
    27         if( data[s-1== data[j])
    28             c++;
    29         else
    30         {
    31             if(--c==0)
    32             break;    
    33         }        
    34     }    
    35     if(c>0)
    36         return data[s-1];
    37     else
    38          majority(data, j+1, e);
    39             
    40 }


    posted on 2008-03-29 23:03 fullfocus 閱讀(536) 評論(1)  編輯  收藏 所屬分類: 算法

    評論:
    # re: 求多數元素 2008-09-27 09:53 | 冶人
    品讀了
    Thx!
    如果我想實現求多數元素,但時間復雜度為O(n),其它無限制,該如何實現呢?請教!  回復  更多評論
      
    主站蜘蛛池模板: 国产精品另类激情久久久免费 | 91成人免费观看| 亚洲一区无码中文字幕| 日本视频免费观看| 免费播放春色aⅴ视频| 无码色偷偷亚洲国内自拍| 日韩免费视频在线观看| 亚洲AV无码资源在线观看| 国产yw855.c免费视频| 无码天堂va亚洲va在线va| 免费一区二区视频| 日本一区二区三区在线视频观看免费| 国产自产拍精品视频免费看| 亚洲av色香蕉一区二区三区| 免费人成网站在线播放| 一级免费黄色大片| 国产亚洲人成网站在线观看不卡| 免费黄色电影在线观看| 亚洲国产成人私人影院| 无人在线观看完整免费版视频 | 亚洲成A人片在线观看中文| 人妻免费久久久久久久了| 好看的亚洲黄色经典| 91在线老王精品免费播放| 亚洲乱码一二三四区国产| 国产精品二区三区免费播放心 | 亚洲日本精品一区二区| 国产福利视精品永久免费| 亚洲人成网站免费播放| 亚洲精品无码激情AV| 免费av片在线观看网站| 亚洲一区AV无码少妇电影| 丁香花免费高清视频完整版| 亚洲最大中文字幕无码网站| 国产无遮挡吃胸膜奶免费看 | 免费福利电影在线观看| 亚洲AV日韩精品久久久久| 日韩欧美一区二区三区免费观看| 日本中文字幕免费看| 亚洲综合无码一区二区三区| 国产免费直播在线观看视频|