标签:std list pre bsp org 为知笔记 span href 操作
Selection Sort 选择排序
#include <stdio.h>
#include <stdlib.h>
int lists[5] = { 4,3,1,2,5 };
void selection_sort(int arr[], int len);
int main()
{
printf("\n\n排序之前的样子是这样的:");
for (int i = 0; i < 5; i++)
printf("%d", lists[i]);
selection_sort(lists, 5);
printf("\n\n排序之后的样子是这样的:");
for (int i = 0; i < 5; i++)
printf("%d", lists[i]);
return 0;
}
void selection_sort(int arr[], int len)
{
int i, j, min, temp;
for (i = 0; i < len - 1; i++)
{
min = i; //指定最小点从左边开始
for (j = i + 1; j < len; j++)
{
if (arr[min] > arr[j]) //未排序中存在比最小点小的
min = j; //找到最小值
}
if (min != i) //交换一下最小值和第一个值
{
temp = arr[min];
arr[min] = arr[i];
arr[i] = temp;
printf("\n\n ---这次:%d找到的最小值是:%d---", i,temp);
}
printf("\n第%d次循环得到的数组的样子是:",i);
for (int i = 0; i < len; i++)
printf("%d", arr[i]);
}
}
排序之前的样子是这样的:43125
---这次:0找到的最小值是:1---
第0次循环得到的数组的样子是:13425
---这次:1找到的最小值是:2---
第1次循环得到的数组的样子是:12435
---这次:2找到的最小值是:3---
第2次循环得到的数组的样子是:12345
第3次循环得到的数组的样子是:12345
排序之后的样子是这样的:12345请按任意键继续. . .
标签:std list pre bsp org 为知笔记 span href 操作
原文地址:http://www.cnblogs.com/kongchung/p/6063809.html