排序问题之快速排序

简介: 版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/u013132758。 https://blog.csdn.net/u013132758/article/details/52106781 排序问题是我们算法中最常遇到的问题,也是最基础的问题。
版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/u013132758。 https://blog.csdn.net/u013132758/article/details/52106781
排序问题是我们算法中最常遇到的问题,也是最基础的问题。排序算法主要有8大算法。今天主要介绍快速排序。
一言不和我们就先上代码:
</pre><pre code_snippet_id="1804909" snippet_file_name="blog_20160803_1_2266677" name="code" class="cpp">
<pre code_snippet_id="1804909" snippet_file_name="blog_20160803_1_2266677" name="code" class="cpp">#include <stdio.h>
int Split(int *A,int low, int high);void quick_sort (int *A,int low,int high);int main(int argc, const char * argv[]) { int A[6] = {11,5,3,4,15,6}; quick_sort(A, 0, 5); printf("%d\n",A[0]); printf("%d\n",A[1]); printf("%d\n",A[2]); printf("%d\n",A[3]); printf("%d\n",A[4]); printf("%d\n",A[5]); return 0;}int Split(int *A,int low, int high){ int x,i,j,index; x = A[low]; i = low; for (j =i+1; j<= high ;j++) { if(A[j] < x) { i++; if( i != j){ index =A[i]; A[i] = A[j]; A[j] = index; } } } x = A[low]; A[low] = A[i]; A[i] = x; return i;}void quick_sort (int *A,int low,int high){ int num; if (high <= low) { return ; } num = Split(A,low,high); quick_sort(A, low, num-1); quick_sort(A, num+1, high);}
 
 
未完,待续。。。。。。
</pre><pre code_snippet_id="1804909" snippet_file_name="blog_20160803_1_2266677" name="code" class="cpp">
 
相关文章
|
存储 算法 搜索推荐
排序篇(四)----归并排序
排序篇(四)----归并排序
62 0
|
7月前
|
算法 搜索推荐
排序——归并排序
排序——归并排序
52 0
|
7月前
|
搜索推荐 算法 Shell
排序——插入排序
排序——插入排序
50 0
|
存储 搜索推荐 测试技术
排序篇(一)----插入排序
排序篇(一)----插入排序
52 0
|
存储 算法 搜索推荐
排序(4)——归并排序
今天给大家带来比较排序的最后一种,归并排序,这个排序,需要我们对递归,循环控制要有着较强的理解,我相信大家通过前面和小编的一起学习,这里肯定也是得心应手。
101 0
|
存储 搜索推荐 测试技术
排序(1)之插入排序
从今天小编就开始给大家介绍排序的内容,对于排序内容我们一共分,插入,选择,交换,归并这几个大类,那么今天小编给大家带来的就是插入排序
105 0
|
算法 搜索推荐
排序——归并排序和计数排序
介绍归并排序和计数排序
120 0
排序——归并排序和计数排序
|
算法
排序——快速排序
排序——快速排序
126 0
排序——快速排序
|
算法 Java
排序系列之插入排序
排序系列之插入排序
130 0
|
移动开发 自然语言处理 算法
排序——归并排序 & 基数排序
排序——归并排序 & 基数排序
171 0
排序——归并排序 & 基数排序