快速排序
概念
- 概念
- 算法实现
- 后续
快速排序的基本思想是基于分治法的,在待排序表中任选一个基准元素,通过一趟排序将待排序划分为独立的两部分,前半部分所有元素均比枢轴元素小,后半部分所有元素均比枢轴元素大,此时枢轴元素就放在了最终的位置,然后分别对两个字表递归重复上面的过程,直至每部分内只有一个元素或空为止,即所有元素放在了其最终位置上。
算法实现快速排序比冒泡排序优良的地方在于它的每次比较不是相邻元素的一次一次比较,而分别从两端开始”探测”的,先从右往左找一个小于枢轴元素的数,放到枢轴的左边,再从左往右找一个大于枢轴的数,放在枢轴的右边。
#include
#include
#include
void Quick_sort(int a[],int low,int high);
int Partition(int a[],int low,int high);
int main()
{
int k;
int num[9]={9,8,7,4,6,5,1,2,3};
int sortsize=sizeof(num)/sizeof(num[0]);
Quick_sort(num,0,sortsize);
for(k=0;k
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?