zoukankan      html  css  js  c++  java
  • 27.用选择排序法对10个整数排序

    简单选择排序的算法思想:假设排序表为L[1...n],第i趟排序即从L[i...n]中选择关键字最小的元素与L(i)交换,每一趟排序可以确定一个元素的最终位置,这样经过n-1趟排序就可以使得整个排序表有序。

     1  #include <stdio.h>
     2  #include <stdlib.h>
     3  int main()
     4   {
     5     int i,j,A[11],n=10,min,t;
     6     for(i=0;i<n;i++)   //依次输入10个数
     7     {
     8         scanf("%d",&A[i]);
     9     }
    10     for(i=0;i<n-1;i++)  //一共进行n-1趟排序
    11     {
    12       min = i;        //记录最小元素的位置
    13       for(j=i+1;j<n;j++) //在A[i..n-1]选择最小元素,从第i+1开始
    14             if(A[j]<A[min])  min = j;  //更新最小元素的位置
    15       if(min!=i)    //与第i个位置进行交换
    16       {
    17           t=A[min];  //交换的是A[]中的元素,t只是一个临时变量(A[t]是错误的)
    18           A[min]=A[i];
    19           A[i]=t;
    20       }
    21     }
    22     for(i=0;i<n;i++)  //输出已排好序的10个数
    23     {
    24         printf("%d ",A[i]);
    25     }
    26      return 0;
    27   }
  • 相关阅读:
    Socket编程
    jdbc03 使用servlet实现
    el和jstl
    java03变量和基本数据类型
    java02
    ssh整合
    U1总结
    多线程
    spring07 JDBC
    cocos2dx中的三种基本的数据类型
  • 原文地址:https://www.cnblogs.com/spore/p/10382139.html
Copyright © 2011-2022 走看看