zoukankan      html  css  js  c++  java
  • ---------快排-----表排-----基数排序(桶排序)-----

    其思想就是  在  一堆数字里面找一个  枢纽数字   然后将数字分成了两堆      ,   一个大于该数字,一个小于该数字.  然后去递归的治理   最后合并一下就OK了.

    ---------------附上一个极为简陋的代码-------------------

    //   依然是  递归实现~~~好恶心.
    void Quicksort( ElementType A[], int N )
    {
        if(N<2) 
             return;
        pivot =  从A[] 中选一个主元;             //主元选择的要恰当.
        将S = { A[]  pivot }  分成2 个独立子集:     
            A1={a∈S|a<=pivot } 和 和
            A2={a∈S|a>=pivot };
        A[] = Quicksort(A1,N1)
            {pivot}
        Quicksort(A2,N2);
    }

    在我们去  取主元的话 我们经常是 去    头中尾   这三个数字之中的中位数.

     第一步  筛选主元

    ElementType Median3(ElementType A[],int left,int right)
    {
        int center=(left+right)/2;
        if(A[left])>A[center])
            swap(A[left},A[center]);
        if(A[left]>A[right])
            swap(A[left],A[Right]);
        if(A[center]>A[right])
            swap(A[center],A[right]);
        swap(A[center],A[right]);       //这样 最后两个数字有序了.
        //只需要考虑 A[left+1]-A[righ-2]  就可以了.
        return A[right-1];
    }

    第二步  子集划分

  • 相关阅读:
    记一次小程序支付开发的坑,超级坑
    springboot集成redis 附redis基本操作类
    springboot整合mybatis及封装curd操作-配置文件
    微信小程序开发
    vue各种插件
    java数据导出成 EXCEL
    jsp自定义标签
    java生成验证码
    文字对齐格式
    css阴影效果
  • 原文地址:https://www.cnblogs.com/A-FM/p/5163735.html
Copyright © 2011-2022 走看看