八大排序算法:简单插入排序、冒泡排序、希尔排序、快速排序、堆排序、归并排序等总结。

持续更新。。。。。。

1、简单插入排序。

原理随便百度一下就知道了,下面直接上代码。

// sort.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include <iostream>

using namespace std;

void sort_insert(int* p,int n)
{
	int i,j,elem;
	for (i = 0; i < n-1; i++)
	{
		elem=*(p+i+1); 
		for (j = i; j >=0 ; j--)
		{
			                            //需要比较的元素
			if (elem>=*(p+j))
			{
				*(p+j+1)=elem;
				break;
			}
			else
			{
				if (j==0)
				{
					*(p+j+1)=*(p+j);
					*(p+j)=elem;
				}
				else
				{
					*(p+j+1)=*(p+j);
					continue;
				}				
			}
		}
	}
}

int _tmain(int argc, _TCHAR* argv[])
{
	int len;  
	int *a;
	cout<<"Please input the array length:"<<endl;  
	cin>>len;  
	a = (int*) malloc(len*sizeof(int));  
	cout<<"Please Input the numbers:"<<endl;
	for (int i = 0; i < len; i++)  
	{  
		cin>>a[i];  
	}
	sort_insert(a,len);
	cout<<"The finnal results are:"<<endl;
	for (int i = 0; i < len; i++)
	{
		cout<<a[i]<<" ";
	}
	cout<<endl;
	return 0;
}

 

    原文作者:爱上健身的菇凉
    原文地址: https://blog.csdn.net/XIAXIA__/article/details/9171191
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞