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 (本群没人,刚刚建立 -_-!!! )
  • 相关阅读:
    一张图掌握移动Web前端所有技术(大前端、工程化、预编译、自动化)
    Nginx-rtmp模块实现流媒体play、push、pull功能
    Nginx-rtmp模块实现流媒体play、push、pull功能
    Nginx-rtmp模块实现流媒体play、push、pull功能
    Nginx-rtmp模块实现流媒体play、push、pull功能
    嘿嘿,我抄袭了,你能把我怎样
    嘿嘿,我抄袭了,你能把我怎样
    前端面试题集锦
    前端面试题集锦
    如何妥善备份你的以太坊钱包
  • 原文地址:https://www.cnblogs.com/Mj-NaijAm/p/13600999.html
Copyright © 2011-2022 走看看