冒泡算法(思路1)
冒泡排序原理
从第一个元素开始,与后面的元素一一比较,若第一个元素大于后面的元素,则位置互调,直到比较到最后的元素,此时该第一个元素应为最小的元素。之后,从第二个元素与后面的元素一一比较,若小于后者则位置互调,直到倒数第二个元素和第一个元素相比较,此时,该数列为递增数列。
#include<iostream> using namespace std; void maopao_sort(int num[], int len) { for (int i = 0; i < len - 1; i++) // 起始元素 { for (int j = i+1; j < len; j++) // 起始元素后面的元素 { if (num[i] > num[j]) // 起始元素大于后面的元素 { int temp = num[i]; //下面的程序块是两个元素位置进行互调 num[j] = num[i]; num[i] = temp; } } } for (int i = 0; i < len; i++) { cout << num[i] << endl; } } int main() { int a[] = { 1, 3, 4, 5, 8, 7, 6, 2 }; int len = 8; maopao_sort(a, len); system("pause"); return 0; }