zoukankan      html  css  js  c++  java
  • 经典排序之选择排序

    
    
    #include <stdio.h>
    int main()
    {
    int i,j,index,k;
    int tem,length;
    int a[10]={2,24,3,19,45,12,1,66,34,7};
    // length = a.length();
    length = 10;
    printf("Before ordered:\n");
    for(i = 0; i < length; i++)
    printf("%d ",*(a+i));
    printf("\n\n");
    for(i = 0; i < length; i++)
    {
    index = i;
    for(j = i+1; j < length; j++)
    {
    if(a[j]>a[index])
    index = j;
    }
    if(index != i)
    {
    tem = a[index];
    a[index] = a[i];
    a[i] = tem;
    }
    printf("The %d time select order:\n",i);
    for(k = 0; k < length; k++)
    printf("%d ",*(a+k));
    printf("\n\n");
    }
    printf("After ordered:\n");
    for(i = 0; i < length; i++)
    printf("%d ",*(a+i));
    printf("\n");
    return 0;
    }


    选择排序类似于冒泡排序,但是不同之处是,每次找到最大(或最小)的下标然后放在前边,其复杂度o(n)^2

  • 相关阅读:
    磁盘冗余 ---RAID磁盘管理
    linux磁盘管理
    linux基础命令
    Apache配置rewrite
    memcache运维整理
    mysql主从配置
    rsync相关整理
    Lua 学习笔记(六)
    Lua 学习笔记(五)
    Lua 学习笔记(四)
  • 原文地址:https://www.cnblogs.com/newpanderking/p/2416477.html
Copyright © 2011-2022 走看看