zoukankan      html  css  js  c++  java
  • QuickSort模板

    #include <iostream>

    using namespace std;

    struct node

    {

             int index;

             char name[20];

    };

    node data[100];

    template<typename T>

    void QuickSort(T* Array,int left,int right,bool (*com)(T* a,T* b))

    {

             int low,high;

             T key;

             if(left>=right) return;

             low=left,high=right;

             key=Array[left];

             while(low<high)

             {

                       while(low<high && com(&Array[high],&key)) high--;

                       Array[low]=Array[high];

                       while(low<high && com(&key,&Array[low])) low++;

                       Array[high]=Array[low];

             }

             Array[low]=key;

             QuickSort(Array,left,low-1,com);

             QuickSort(Array,low+1,right,com);

    }

    bool com(int* a,int* b)

    {

             return *a>=*b;

    }

    bool com1(node* a,node* b)

    {

             return a->index> b->index;

    }

    int main()

    {

             int n,i;

             while(scanf("%d",&n)!=EOF)

             {

                       for(i=0;i<n;i++) scanf("%d %s",&data[i].index,data[i].name);

                       QuickSort(data,0,n-1,com1);

                       for(i=0;i<n;i++) printf("%d %s ",data[i].index,data[i].name);

                       printf(" ");

             }

             return 0;

    }

  • 相关阅读:
    活学活用wxPython基础框架
    xpython在Windos下的安装及简单的文本打开、保存
    paramiko实现上传目录
    Python3结合paramiko执行命令
    openstry lua redis实现负载均衡
    定时重启tomcat
    简单的生成随机验证码
    第一个Python小项目:图片转换成字符图片
    Python小练习(二)
    Python小练习(一)
  • 原文地址:https://www.cnblogs.com/yu-chao/p/3160288.html
Copyright © 2011-2022 走看看