zoukankan      html  css  js  c++  java
  • select sort O(n2)

    #include <stdio.h>
    int input(int* array);
    int selectMinKey(int* p, int i, int len);
    void selectOrder(int *p, int len);
    
    int input(int* array)
    {
            int n;
            int i = 0;
            while(1) {
                    scanf("%d", &n);
                    if(n == -1) break;
                    *array = n;
                    array++;
                    i++;
            }   
        
            return i;  
    }
    int main()
    {
            int array[10];  
            int len;
            len = input(array);
    //      bubbleOrder(array);
    //      quickOrder(array, len);
            selectOrder(array,len);
            for(int i =0; array[i] != '\0'; i++) {
                    printf("number is:%d\r\n", array[i]);
            }   
            return 0;
    }
    int selectMinKey(int* p, int i, int len)
    {
            int min = *(p+i);
            int index = i;
            for(int j=i+1; j< len; j++)
            {   
                    if(min > *(p+j)) {
                            min = *(p+j);
                            index = j;
                    }
            }      
            return  index;
    }
    
    void selectOrder(int* p, int len)
    {
    
            for(int i = 0; i< len; i++)
            {
                    int j = selectMinKey(p , i, len);
                    if(i != j) {
    
                            int tmp = *(p+j);
                            *(p+j) = *(p+i);
                            *(p+i) = tmp;
                    }
            }
    
    }
    

      

  • 相关阅读:
    sql,linq基础再一次学习
    position与aop
    java基础常用类!
    JNI初步!
    java基础动态代理!
    java基础面向对象!
    php初步!
    java基础泛型!
    java基础对象多态性!
    java基础io流!
  • 原文地址:https://www.cnblogs.com/mysqlinternal/p/2955892.html
Copyright © 2011-2022 走看看