zoukankan      html  css  js  c++  java
  • C++总结笔记(八)排序算法之快速排序

    快速排序

    1. 将想要排序的数据通过一趟排序分割成两部分,其中的一部分数据比另外一部分的小;然后按照此方法对两部分数据分别快速排序。

    #include<iostream>
    #include<string>
    using namespace std;

    void quickSort(int* array,int begin,int end)
    {
     int l = begin;
     int r = end;
     int temp = array[begin];

     if(l>=r)
     {
      return;
     }
     while(l != r)
     {
      if(l<r && array[r] > temp)
      {
       r--;
      }
      array[l] = array[r];

      if(l<r && array[l] < temp)
      {
       l++;
      }
      array[r] = array[l];
     }
     array[l] = temp;

     quickSort(array,begin,l-1);
     quickSort(array,l+1,end);
    }

    int main()
    {
     int array[] = {23,45,3,2,24,56,1,67,4};
     int len = sizeof(array)/sizeof(int);
     quickSort(array,0,len-1);

     for(int i = 0;i<len;i++)
     {
      cout<<array[i]<<endl;
     }
     return 0;
    }

  • 相关阅读:
    CUDA和cudnn的环境变量设置问题
    zsh-Ubuntu更实用终端
    应用安全
    应用安全
    应用安全
    操作系统
    应用安全
    应用安全
    操作系统
    密码学
  • 原文地址:https://www.cnblogs.com/huochangjun/p/3109582.html
Copyright © 2011-2022 走看看