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

            狂奔的蝸牛

            通過計(jì)算機(jī)成就人生

            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 << "這里其實(shí)還是執(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 幽夢(mèng)還鄉(xiāng) 閱讀(255) 評(píng)論(0)  編輯 收藏 引用

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


            久久91综合国产91久久精品| 久久精品国产一区| 性色欲网站人妻丰满中文久久不卡| 欧美va久久久噜噜噜久久| 久久精品国产亚洲5555| 久久久久久久精品妇女99| 久久综合综合久久97色| 91麻豆国产精品91久久久| 日本一区精品久久久久影院| 伊人久久大香线蕉av不卡| 91精品国产91久久久久久蜜臀 | 美女写真久久影院| 久久天天躁夜夜躁狠狠躁2022| 四虎国产精品免费久久5151| 久久亚洲私人国产精品vA| 亚洲国产精品一区二区三区久久| 国产精品一久久香蕉产线看| 久久久久久久久波多野高潮| 久久天天日天天操综合伊人av| 久久99精品国产麻豆| 亚洲精品国产美女久久久| 色偷偷91久久综合噜噜噜噜| 国产农村妇女毛片精品久久| 久久久久久狠狠丁香| 2021久久精品国产99国产精品| 欧美亚洲色综久久精品国产| 思思久久精品在热线热| 亚洲精品第一综合99久久| 三级韩国一区久久二区综合| 久久精品亚洲精品国产欧美| 精品乱码久久久久久夜夜嗨| 亚洲精品高清久久| 国产免费久久精品99久久| 久久噜噜电影你懂的| 久久精品免费一区二区三区| 久久99精品国产麻豆| 久久九九青青国产精品| 亚洲精品高清国产一久久| 久久国产香蕉视频| 少妇无套内谢久久久久| 婷婷久久久亚洲欧洲日产国码AV|