zoukankan      html  css  js  c++  java
  • c语言之排序

    常见排序手法:

    一冒泡排序:

    在数列中找最大值或者最小值依次排序。通过依次找到比当前在数组位置中值小的或者大的不断交换来实现的:

    1、后面如果有比第一个数字大的就和第一个交换

    2、后面如果有比第二个数字大的就和第二个交换

    3、···········

    [0]3          [1] 2        [2] 1       [3] 4         [4]5         [5]6

    [0] 1          [1] 2        [2] 3       [3] 4         [4]5         [5]6

    从小到大从大开始排序:

    假设有一个count(表示几位数)数的排序

    int  j , k , count , temp ;
    
    int array [];
    
    for (k = count - 2 ; k > 0 ; k --){
    
        for ( j = 0 ; j < k ; j ++ ){
    
            if ( array [ j ] > array [ j + 1 ] ){
    
                temp = array [ j ];
    
                array [ j ] = array [ j + 1 ];
    
                array [ j + 1 ] = temp ;
    
            }
    
        }
    
    }
    

      

    从小到大从小开始排序:

    假设有一个count(表示几位数)数的排序

    int  j , k,count,temp ;
    
    int array[];
    
    for( k = 0 ; k < count-1 ; k ++ ){
    
        for( j = k+1 ;j < count-1 ; j ++ ){
    
            if( array [ k ] > array [ j ] ){
           temp = array [ j ];
              array [ k ] = array [ j ];
    
              array [ j ] = Temp;
    
            }
    
        }
    
    }    
    

      

    二、选择排序

    依次在序列中找最小的然后交换

    [0]3          [1] 2        [2] 1       [3] 4         [4]5         [5]6

    [2] 3          [1] 2        [0] 1       [3] 4         [4]5         [5]6

    假设有一个count(表示几位数)数的排序

    int  i , j , k , min , temp ,count ;
    
    int array[];
    
    for(k = 0 ;k < count -1){
    
        min = k;
    
        for (i=k+1 ; i < count ; i ++ ){
    
            if(array [ min ] > array [ i ] )
    
            min = i ;
    
        }     //在函数中找最小值
    
        if ( min == k){
    
            temp = min ;
    
            min = k;
    
            K = temp ;
    
        }
    
    }
    

      

    学如逆水行舟,不进则退。 博客园技术交流群 群 号:1073255314 (本群没人,刚刚建立 -_-!!! )
  • 相关阅读:
    nginx用户统计
    mysql用户和授权
    memcache操作
    nginx memcache缓存
    memcached安装启动
    Unity 菜单拓展
    用C#创建XML, XML格式化输出
    解析swf文件头,获取flash的原始尺寸
    kinematic与static刚体不会触发任何接触回调
    git使用
  • 原文地址:https://www.cnblogs.com/Mj-NaijAm/p/13600999.html
Copyright © 2011-2022 走看看