C/C++教程

插入排序 C++版

本文主要是介绍插入排序 C++版,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

从数组第一个元素a[j]往前比较,如果比前一个数组元素a[j-1]大,就将该数组元素与a[j-1]交换位置。

#include <iostream>
#include <string>
using namespace std;
void swap(int* a, int* b)
{
	int tmp = *a;
	*a = *b;
	*b = tmp;
}
void print(int a[], int n)
{
	for (int i = 0; i < n; i++)
	{
		cout << a[i] << " ";
	}
}
void InsertSort(int a[], int n)
{
	for (int i = 1; i < n; i++)
	{
		for (int j = i; j > 0; j--)
		{
			if (a[j] < a[j - 1]) swap(&a[j],&a[j-1]);
		}
	}
}
int main()
{
	int a[8] = { 3,4,2,1,6,0,9,5 };
	InsertSort(a, 8);
	print(a, 8);
}

这篇关于插入排序 C++版的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!