Bubble Sort Method
Principle:
It repeatedly visits the sequence to be sorted, compares two elements at a time, and swaps them if their order is wrong. The task of visiting the series is repeated until no further exchange is needed, which means that the sequence has been sorted.
The bubble sort algorithm works as follows:
1. Compare adjacent elements. If the first one is bigger than the second one, swap them both.
2. For each pair of adjacent elements to do the same work, from the beginning to the end of the first pair. At this point, the final element should be the largest number.
3. Repeat the above steps for all elements except the last one.
4. Continue to repeat the steps above for fewer elements at a time until no pair of digits need to be compared.
Sample code:
Copy Code code as follows:
#include <iostream>
using namespace Std;
int main () {
In ascending order
int a[10]={15,13,2,3,6,5,88,-3,30,40};
int i,j,t;
for (i=0;i<9;i++) {
For (j=0;j< (9-i); j + +) {
if (A[j]>a[j+1]) {
T=A[J+1];
A[J+1]=A[J];
a[j]=t;
}
}//through each cycle, sinking a maximum number of
}//a 10-digit number, sinking the 9 maximum number, you can sort the
for (i=0;i<10;i++) {
cout<<a[i]<< ' t ';
}
cout<<endl;
return 0;
}
Analysis: Through 22 comparison, the first order, will be the largest number of 88 to the last a[9] .... Nineth trip, a[1]=2, and then sort of finished
Select a Sort method
Principle:
The basic idea of choosing a sort is to select the smallest key in a n-i+1 (i=1,2,...n-1) record as the first record in an ordered sequence.
The I-trip simple choice sort refers to the smallest record in the n-i+1 record, and the exchange with the first record, by comparing the N-i key word. A i-1 comparison is required until all records are sorted. For example, when I go to the first selection, select the minimum number of keywords in the current candidate record and exchange it with the first record.
Sample code:
Copy Code code as follows:
#include <iostream>
using namespace Std;
int main () {
In ascending order
int a[10]={15,13,2,3,6,5,88,-3,30,40};
int i,j,t,k=0;
for (i=0;i<9;i++) {
K=i;
for (j=i+1;j<10;j++) {
if (A[j]<a[k]) {
K=j;
}
}
T=A[K];
A[k]=a[i];
a[i]=t;
}
for (i=0;i<10;i++) {
cout<<a[i]<< ' t ';
}
cout<<endl;
return 0;
}