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

    代码:

    #include<stdio.h>
     
     
    int data[] = {3,1,2,4,7,6,8};
    void printData(int data[],int length);
    void chooseSort(int data[], int length);
    void swap(int *a, int *b);
    #define N 7
    int main(void)
    {
     
    printData(data,N);
    chooseSort(data,N);
    printData(data,N);
    return 0;
    }
     
     
    void printData(int data[],int length)
    {
    int i;
    for(i = 0;i<length;++i)
    {
    printf("%d ",data[i]);
    }
    printf(" ");
    }
     
    void chooseSort(int data[], int length)
    {
    int i;
    int j;
    int t;
    for(i=0;i<length-1;++i)
    {
    t = i;
    for(j=i+1;j<length;++j)
    {
    if(data[j]<data[t])
    {
    t = j;
    }
    }
     
    if(t != i)
    {
    swap(&data[i],&data[t]);
    }
    }
    }
    void swap( int *a, int *b)
    {
    *a ^= *b;
    *b ^= *a;
    *a ^= *b;
    }

    运行结果:

    3 1 2 4 7 6 8
    1 2 3 4 6 7 8
  • 相关阅读:
    五一训练礼包 — B
    五一训练礼包—坐标问题
    单链表
    顺序表
    链表
    基础DP(3)
    基础DP(2)
    基础DP(1)
    分治法
    最小表示法
  • 原文地址:https://www.cnblogs.com/yldf/p/11900180.html
Copyright © 2011-2022 走看看