[算法天天练]选择排序

Posted 天道酬勤

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[算法天天练]选择排序相关的知识,希望对你有一定的参考价值。

选择排序

 

#include <iostream>
using namespace std;

void SelectSort(int data[], int ilen)
{
	int temp;
	int iIndex = 0;
	for(int i=0; i<ilen-1; i++)
	{
		iIndex = i;
		
		for(int j=i+1; j<ilen; j++)	
		{
			if(data[j]<data[iIndex])
			{
				iIndex = j;
			}
		}
		
		if(iIndex != i)
		{
			temp = data[i];
			data[i] = data[iIndex];
			data[iIndex] = temp;
		}
	}	
}

void PRINT(int data[], int ilen)
{
	for(int i=0; i<ilen; i++)
	{
		cout << data[i] << " ";
	}
	cout << endl;
}

int main()
{
	int data[] = {2, 1, 5, 4, 9, 0, 9, -1, 99, 3};  
	
	int ilen = sizeof(data)/sizeof(data[0]);
	
	PRINT(data, ilen);
	
	SelectSort(data, ilen);
	
	PRINT(data, ilen);
	
	return 0;
}

  

以上是关于[算法天天练]选择排序的主要内容,如果未能解决你的问题,请参考以下文章

C语言练习之 选择排序

实例三十九 序列插入排序 python编程天天练

算法天天练1:计算最长子串

排序算法专题之选择排序

天天算法————堆排序

C++入门:排序之快速排序