zoukankan      html  css  js  c++  java
  • 快速排序

    #include<iostream>
    using namespace std;
    int partition(int arr[], int low, int end) {
      int i=low;
      int j=end+1;
      int x=arr[low];
      while (1) {
        while (i < end && arr[++i] < x);
        while (arr[--j] > x);
        if (i >= j) break;
        swap(arr[i],arr[j]);
      }
      swap(arr[low],arr[j]);
      return j;
    }
    void quicksort(int arr[], int low, int end){
      if (low < end){
        int p=partition(arr, low, end);
        quicksort(arr, low, p-1);
        quicksort(arr, p+1, end);
      }
    }
    int main() {
      int arr[] = {5,13,6,24,2,8,19,27,6,12,1,17};
      int N=12;
      int n;
      //cin>>n;
      //for (int i=0; i<n; i++){
      //  cin>>arr[i];
      //} 
      quicksort(arr, 0, N-1);    
      for (int i=0; i<N; i++){
        cout<<arr[i]<<" ";
      } 
    }
  • 相关阅读:
    第 9 章
    第 8 章
    第 7 章
    第 6 章
    第 5 章
    第 4 章
    跳舞链解数独
    minic 类型声明与变量定义句型处理
    minic 动作句型处理
    minic 符号表
  • 原文地址:https://www.cnblogs.com/a863886199/p/6628480.html
Copyright © 2011-2022 走看看