鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 编程语言开发 > c++ > >

InsertionSort

来源:互联网 作者:佚名 时间:2016-06-16 09:04
简单插入排序的C/C++模版实现。Usetemplatetoimplementinsertionsort. 无 #pragma once#include vector#includestdlib.h#includeiostreamusing namespace std;templatetypename T vectorT insertionSort(vectorT dataList){for (int index = 1; index dataLis
简单插入排序的C/C++模版实现。Use template to implement insertion sort. <无>
#pragma once
#include <vector>
#include<stdlib.h>
#include<iostream>

using namespace std;

template<typename T> 
vector<T> insertionSort(vector<T> & dataList)
{
	for (int index = 1; index < dataList.size(); index++)
	{
		T key = dataList.at(index);
		int iterator = index - 1;

		//Because in C++, index starts from 0, so iterator >= 0;
		while ((iterator >= 0) && (dataList.at(iterator) > key))
		{
			dataList.at(iterator + 1) = dataList.at(iterator);
			--iterator;
		}//end inner loop
		dataList.at(iterator + 1) = key;
	}//end loop

	return dataList;
};//end function
网友评论
<