zoukankan      html  css  js  c++  java
  • 冒泡排序、选择排序

        冒泡排序、选择排序是在学习排序算法时必先接触到的,作为一种简单的排序算法,它们的思路都很简单,所以就不再详细介绍了,直接看代码吧

     1 #include<iostream>
     2 using namespace std;
     3 
     4 void swap(int a[],int i,int j)
     5 {
     6     int t;
     7     t=a[i];
     8     a[i]=a[j];
     9     a[j]=t;
    10 }
    11 void bubblesort(int a[],int n)
    12 { 
    13     int i,j;
    14      for(i=0;i<n-1;i++)
    15         for(j=0;j<n-1-i;j++)
    16              if(a[j]>a[j+1])
    17                     swap(a,j,j+1);
    18 }
    19 void selectionsort(int a[],int n)
    20 {
    21     int   i,j,k=0;
    22     for(i=0;i<n-1;i++)
    23     {
    24           k=i;
    25           for(j=i+1;j<n;j++)
    26               if(a[k]>a[j])    
    27                   k=j;
    28           if(i!=k)
    29                 swap(a,i,k);
    30     }
    31 }
    32 int main()
    33 {
    34     int a[10]={34,4,78,35,8,64,45,18,26,35};
    35     int b[10]={13,7,24,8,18,7,26,5,10,28};
    36     bubblesort(a,10);
    37     selectionsort(b,10);
    38     cout<<"对数组a排序后为:
    ";
    39     for(int i=0;i<10;i++)
    40         cout<<a[i]<<" ";
    41     cout<<"
    对数组b排序后为:
    ";
    42     for(int i=0;i<10;i++)
    43         cout<<b[i]<<" ";
    44     return 0;
    45 }

    运行结果如下:

    看完以后,可以自己动手去敲敲代码,进一步增强理解。

  • 相关阅读:
    BZOJ-1497 最大获利
    POJ-3680 Intervals & NOI 2008 志愿者招募 费用流
    CodeForces 663E Binary Table
    南昌区域赛-G Eating Plan
    HDU-5909 Tree Cutting
    BZOJ-4589 Hard Nim
    UVA-12633 Super Rooks on Chessboard
    SPOJ-TSUM Triple Sums
    HDU-4609 3-idiots
    Kattis-aplusb A+B problem
  • 原文地址:https://www.cnblogs.com/buanxu/p/12805164.html
Copyright © 2011-2022 走看看