• <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++博客 首頁 新隨筆 聯系 聚合 管理
              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 /*默認都安升序排列*/
             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 << "這里其實還是執行了的" << 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 幽夢還鄉 閱讀(256) 評論(0)  編輯 收藏 引用
            久久天堂AV综合合色蜜桃网| 久久精品视频网| 久久精品国产色蜜蜜麻豆| 久久久久亚洲AV成人网人人网站 | 色婷婷综合久久久久中文| 久久天天躁狠狠躁夜夜网站| 国产成人久久精品麻豆一区 | 欧美精品一区二区久久| 久久香综合精品久久伊人| 久久精品国产亚洲AV不卡| 日产精品久久久久久久性色| 久久久久久久综合综合狠狠| 亚洲国产精品无码久久久不卡 | 日韩乱码人妻无码中文字幕久久| 久久av高潮av无码av喷吹| A狠狠久久蜜臀婷色中文网| 伊人久久国产免费观看视频 | 国产日韩久久免费影院| 亚洲欧美成人综合久久久| 无码人妻少妇久久中文字幕 | 青青草原精品99久久精品66| 久久婷婷五月综合成人D啪| 色综合久久最新中文字幕| 久久久久久久人妻无码中文字幕爆 | 免费观看久久精彩视频| 久久精品国产网红主播| 亚洲AV乱码久久精品蜜桃| 久久久这里有精品| 欧美成人免费观看久久| 欧美午夜A∨大片久久 | 综合网日日天干夜夜久久| 理论片午午伦夜理片久久| 国产成人久久精品麻豆一区| 久久免费高清视频| 色综合合久久天天综合绕视看 | 久久国产乱子伦精品免费强| 精品熟女少妇av免费久久| www.久久热| 精品多毛少妇人妻AV免费久久| 国产精品内射久久久久欢欢| 久久99精品国产麻豆婷婷|