隨筆 - 312, 文章 - 14, 評論 - 1393, 引用 - 0
          數據加載中……

          選擇排序(selection sort)算法實現

              從字面上理解,就是通過不斷地選擇數組元素,從而達到排序的目的。我插入排序類似,假設第i(i<n)個數組元素data[0]是最大的(從大到小排序),然后依次掃描i + 1 到 n - 1的元素,找到比第i個元素大的元素。最后將它們交換。
          算法的時間復雜度為O(n^2)

          算法的實現如下
          #include <stdio.h>

          void output_array(int data[], int n)
          {
              
          int i;
              
          for(i = 0; i < n; i++)
                  printf(
          "%d ", data[i]);
              printf(
          "\n");
          }
          void swap(int *a, int *b)
          {
              
          int x;
              x 
          = *a;
              
          *= *b;
              
          *= x;
          }
          //算法實現
          void selection(int data[], int b, int e)
          {
              
          int i, j, high_index;
              
          for(i = b; i < e; i++)
              {
                  high_index 
          = i;
                  
          for(j = e; j > i; j--)
                      
          if(data[j] > data[high_index])
                          high_index 
          = j;
                  swap(
          &data[i], &data[high_index]);
              }
          }
          int main()
          {
              
          int data[] = {5316657766441110986};
              output_array(data, 
          12);
              selection(data, 
          011);
              output_array(data, 
          12);
              
          return 0;
          }




          Android開發完全講義(第2版)(本書版權已輸出到臺灣)

          http://product.dangdang.com/product.aspx?product_id=22741502



          Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


          新浪微博:http://t.sina.com.cn/androidguy   昵稱:李寧_Lining

          posted on 2008-05-16 13:21 銀河使者 閱讀(1569) 評論(0)  編輯  收藏 所屬分類: algorithmC/C++

          主站蜘蛛池模板: 玉林市| 杭锦后旗| 赣榆县| 河南省| 宁武县| 工布江达县| 仁化县| 南召县| 新津县| 隆德县| 邢台市| 泰来县| 鸡西市| 沧州市| 青浦区| 朝阳县| 金坛市| 台中县| 屏边| 浦北县| 永和县| 乌苏市| 五家渠市| 鄯善县| 湘乡市| 松溪县| 绥中县| 那坡县| 溧阳市| 水城县| 隆林| 南靖县| 江陵县| 高台县| 客服| 郯城县| 雷波县| 绵竹市| 黑山县| 滦平县| 襄汾县|