转载

插入排序

插入排序

插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)是稳定的排序方法

C++代码:

#include<iostream>
using namespace std;

int insertSort(int *a, int len) {
	int i = 1, j = 0;
	int temp = 0;
	
	/*循环n-1次*/
	while(i < len){
		temp = a[i];
		j = i - 1;
		
		while(j >= 0 && temp < a[j]) {
			a[j+1] = a[j];
			j--;				
		}
		a[j+1] = temp;
		i++;
	}	
}

int main() {
	int a[10] = {1, 3, 2, 5, 8, 5, 4, 4, 0, 3};
	insertSort(a, 10);
	
	for(int i = 0; i < 10; i++)
		printf("%d ", a[i]);
} 
正文到此结束
本文目录