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

            狂奔的蝸牛

            通過計算機成就人生

            C++博客 首頁 新隨筆 聯(lián)系 聚合 管理
              10 Posts :: 0 Stories :: 1 Comments :: 0 Trackbacks
              1 //============================================================================
              2 // Name        : suanfa.cpp
              3 // Author      : dream
              4 // Version     :
              5 // Copyright   : powered by YeQiangWei
              6 // Description : Hello World in C++, Ansi-style
              7 //============================================================================
              8 
              9 #include <iostream>
             10 using namespace std;
             11 /*默認(rèn)都安升序排列*/
             12 class Algorithm {
             13 public:
             14     /*分治法*/
             15     void merge_sort(int* a, int p, int r);
             16     void merge(int* a, int p, int q, int r);
             17     /**選擇排序*/
             18     void select_sort(int* a, int length);
             19     /*插入排序*/
             20     void insert_sort(int* a, int length);
             21     /*冒泡排序*/
             22     void bubble_sort(int* a, int length);
             23 };
             24 void Algorithm::bubble_sort(int* a, int length) {
             25     for (int i = 1; i < length; i++) {
             26         for (int j = 0; j <= i; j++) {
             27             if (a[i] < a[j]) {
             28                 int key = a[j];
             29                 a[j] = a[i];
             30                 a[i] = key;
             31             }
             32         }
             33 
             34     }
             35 }
             36 void Algorithm::insert_sort(int* a, int length) {
             37     cout << length << endl;
             38     for (int i = 1; i < length; i++) {
             39         int j = i - 1;
             40         int key = a[i];
             41         while (j >= 0 && key < a[j]) {
             42             a[j + 1= a[j];
             43             j--;
             44         }
             45         a[j + 1= key;
             46     }
             47 }
             48 void Algorithm::merge(int* a, int p, int q, int r) {
             49     int n1 = q - p + 1;
             50     int n2 = r - q;
             51     int* L = new int[n1 + 1];
             52     int* R = new int[n2 + 1];
             53     for (int m = 0; m < n1; m++) {
             54         L[m] = a[p + m];
             55     }
             56     for (int n = 0; n < n2; n++) {
             57         R[n] = a[q + n + 1];
             58     }
             59     int i = 0;
             60     int j = 0;
             61     for (int k = p; k <= r; k++) {
             62         if (L[i] <= R[j]) {
             63             a[k] = L[i];
             64             i++;
             65         } else {
             66             a[k] = R[j];
             67             j++;
             68         }
             69     }
             70 }
             71 
             72 void Algorithm::merge_sort(int* a, int p, int r) {
             73 
             74     int q = 0;
             75     //cout << "這里其實還是執(zhí)行了的" << q << endl;
             76     if (p < r) {
             77         q = (p + r) / 2;
             78         merge_sort(a, p, q);
             79         merge_sort(a, q + 1, r);
             80         merge(a, p, q, r);
             81     }
             82 }
             83 
             84 void Algorithm::select_sort(int* a, int length) {
             85     if (NULL == a)
             86         return;
             87     cout << length << endl;
             88     for (int i = 0; i < length; i++) {
             89         for (int j = i; j < length; j++) {
             90             if (a[i] > a[j]) {
             91                 cout << "a[]=" << a[i] << endl;
             92                 int key = a[i];
             93                 a[i] = a[j];
             94                 a[j] = key;
             95             }
             96         }
             97     }
             98 }
             99 
            100 int main() {
            101     int a[] = { 35794821 };
            102     int length = sizeof(a) / sizeof(a[0]);
            103     Algorithm al;
            104     al.bubble_sort(a, length);
            105     for (size_t i = 0; i < (sizeof(a) / sizeof(a[0])); i++) {
            106         cout << a[i] << " ";
            107     }
            108     return 0;
            109 }
            110 
            111 
            112 

            posted on 2010-05-27 22:16 幽夢還鄉(xiāng) 閱讀(256) 評論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            日韩精品无码久久久久久| 国产精品成人久久久久三级午夜电影| 久久99精品久久久久久秒播| 国产精品99久久不卡| 免费一级做a爰片久久毛片潮 | 久久精品一本到99热免费| 国产精品美女久久久| 久久久久噜噜噜亚洲熟女综合| 亚洲国产成人久久综合野外| 久久国产亚洲精品无码| 老司机午夜网站国内精品久久久久久久久 | 国产成年无码久久久久毛片| 亚洲国产成人久久一区WWW| 久久久久亚洲av无码专区导航| 久久久久久毛片免费看| 久久婷婷国产综合精品| 亚洲а∨天堂久久精品| 日本久久久精品中文字幕| 无码人妻久久久一区二区三区| 久久久黄片| 丁香五月综合久久激情| 精品国产VA久久久久久久冰 | 欧美一区二区三区久久综合| 久久精品国产一区二区三区不卡| 成人国内精品久久久久一区| 99久久做夜夜爱天天做精品| 大蕉久久伊人中文字幕| 久久99国产精品一区二区| 久久国产乱子伦免费精品| 久久亚洲国产精品成人AV秋霞| 人人狠狠综合久久亚洲高清| 精品久久久久久无码国产| 国产激情久久久久影院| 亚洲狠狠久久综合一区77777 | 亚洲国产精品一区二区三区久久| 亚洲综合久久综合激情久久| 青青青国产成人久久111网站| 久久综合综合久久97色| 国产精品久久免费| 国产AⅤ精品一区二区三区久久| 日韩精品国产自在久久现线拍|