c语言之选择排序算法

一丶什么是选择排序?算法

选择排序(Selection sort)是一种简单直观的排序算法。
它的工做原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始置,直到所有待排序的数据元素排完。 
选择排序是不稳定的排序方法(好比序列[5,5,3]第一次就将第一个[5]与[3]交换,致使第一个5挪动到第二个5后面)。

数组

2、实现思想ide

1)用第一个数与其余数比较,若是其余数比第一个数大就交换,否则就不换spa


 100 34 2 16 87 98 19 23 第一个数和第二个至最后一个比较排序

2)第一个数已经肯定了,用第二个数和其余数比较,仍是比第二个数大就交换it

 100 98 2 16 87 34 19 23 第二个数和第三个至最后一个比较io

3)第三次比较选出第三大的数放在数组的第三个位置class

 100 98 87 16 2 34 19 23原理

         程序

         .

         .

以此类推,最后获得结果:100 98 87 34 23 19 16 2


3、c语言程序代码

#include<stdio.h>void Xueze(int *a,int n);int main(void) {   int k; int a[10]={2,4,6,8,0,1,3,5,7,9}; for(k=0;k<10;k++) { printf("%d ",a[k]); } printf("\n"); Xueze(a,10); for(k=0;k<10;k++) { printf("%d ",a[k]); } printf("\n"); return 0;}void Xueze(int *a,int n){ int i,j,t,min; for(i=0;i<n-1;i++) { min=i;        for (j=i+1;j<n;j++)        {         if(a[j]<a[min])         {         min=j; } } t=a[i]; a[i]=a[min]; a[min]=t; }}

相关文章
相关标签/搜索