Quick sort
2016-07-27 15:45
471 查看
Quick sort is look like bubble sort, but it is quicker with divide and conquer.
Complexity: nlog(n)
Steady: NO
Complexity: nlog(n)
Steady: NO
#include<bits/stdc++.h> using namespace std; int L[] = {3,44,38,5,47,15,36,26,27,2,46,4,19,50,48}; void QuickSort(int left,int right){ int l = left; int r = right; if(left>=right){ return ; } int pivot = L[left]; while(left<right){ while(left<right&&L[right]>=pivot){ //it must be L[right]>=pivot not '>', //or it will infinite loop like L[] = {3,3} right--; } L[left] = L[right]; while(left<right&&L[left]<=pivot){ //as before left++; } L[right] = L[left]; } L[left] = pivot; QuickSort(l,left); QuickSort(right+1,r); return ; } int main(){ int n = sizeof(L)/sizeof(int); int left = 0; int right = n-1; QuickSort(left,right); for(int i=0;i<n;i++){ cout<<L[i]<<' '; } cout<<endl; }
相关文章推荐
- TextFiled修改placeholder的颜色和字体大小
- Convert dictionary values into array
- poj2299 Ultra-QuickSort
- Qt Quick ToolTip
- UIVisualEffectView
- 查找QUERY的几张表
- MUI 拨打电话
- UILabel 首行缩进两个字符
- Error:Execution failed for task...finished with non-zero exit value 2
- SVN使用报错 Synchronize operation failed. RA layer request failed svn: REPORT request on
- Java中连结MySQL启用预编译的先决条件是useServerPstmts=true.
- UIView release, message send to deallocated instance
- Java中break、continue与return的区别
- 对uiview实现部分圆角
- Bluetooth-->蓝牙开发之状态判断
- UITableViewCell显示动画
- UIView非常用方法及属性详解
- hdu 1005 Number Sequence
- Rescue
- Android酷炫实用的开源框架(UI)