当前位置: 首页 > wzjs >正文

免费网站建设自带后台管理程序教育直播平台搭建

免费网站建设自带后台管理程序,教育直播平台搭建,做网站需要什么步骤,西部数码成品网站快速排序属于交换排序。 算法思想: 快速排序的核心思想是分治法,通过选择一个基准元素(pivot),将序列分为两部分:小于基准的部分和大于基准的部分。然后递归地对这两部分进行排序。 在数组或者顺序存储的序列中,可以…

快速排序属于交换排序。

算法思想:

快速排序的核心思想是分治法,通过选择一个基准元素(pivot),将序列分为两部分:小于基准的部分和大于基准的部分。然后递归地对这两部分进行排序。

在数组或者顺序存储的序列中,可以通过随机访问快速找到任意位置的元素,并通过交换操作高效地完成分区(partition)。然而,链表是顺序访问的数据结构,无法像数组一样高效地支持随机访问和交换操作

在待排序表[1...n]中任取一个元素pivot作为枢轴(或基准,通常取首元素),通过一趟排序将待排序表划分为独立的两部分L[1...k-1]和L[k+1...n],使得L[1...k-1]中的所有元素小于pivot,L[k+1...n]中的所有元素大于等于pivot,则pivot放在了其最终位置L(k)上,这个过程称为一次“划分”。然后分别递归地对两个子表重复上述过程,直至每部分内只有一个元素或空为止,即所有元素放在了其最终位置上。

//分区函数,返回枢轴元素的最终位置
int partition(int A[],int left,int right){if(left>=right) return left;//先设置随机数种子,确保每次运行程序时生成不同的随机数序列srand(time(NULL));//在当前序列中随机选一个元素作为枢轴int random_pos = left + rand()%(right - left +1);//将随机选择的枢轴元素交换到数组的第一个位置int temp = A[random_pos];A[random_pos] = A[left];A[left] = temp;int pivot = A[left];//用新的第一个元素作为枢轴while(left<right){  //用left和right搜索枢轴元素的最终位置//从右向左找到第一个小于等于枢轴的元素while(left<right && A[right]>pivot) right--;A[left] = A[right];//从左向右找到第一个大于枢轴的元素while(left<right && A[left]<=pivot) left++;A[right] = A[left];}A[left] = pivot;//把枢轴元素存放到最终位置return left;    //返回存放枢轴元素的最终位置
}void quick_sort(int A[],int left,int right){if(left>=right) return;//递归结束int pivot_position = partition(A,left,right);quick_sort(A,left,pivot_position-1);quick_sort(A,pivot_position+1,right);
}

总结

算法表现主要取决于递归深度,若每次“划分”越均匀,则递归深度越低。“划分”越不均匀,递归深度越深。

快速排序性质
最好时间复杂度O(nlogn),每次划分很平均
最坏时间复杂度O(n^2),原本正序或逆序
平均时间复杂度O(nlogn)
最好空间复杂度O(logn)每次划分很平均
最坏空间复杂度O(n)
稳定性不稳定
适用性仅适用于顺序表,不适用于链表

文章转载自:

http://lF8gfQRr.fdLyh.cn
http://mntk7rgT.fdLyh.cn
http://bMqiUVW6.fdLyh.cn
http://SF6aC5b3.fdLyh.cn
http://CD9uZYwQ.fdLyh.cn
http://RtHw7Y2f.fdLyh.cn
http://WbNzhBw4.fdLyh.cn
http://PaJksEZn.fdLyh.cn
http://LfXcDkOQ.fdLyh.cn
http://vsarvB3S.fdLyh.cn
http://hxESUhNo.fdLyh.cn
http://v61pqakK.fdLyh.cn
http://qQuciZtO.fdLyh.cn
http://LHSFQ1gH.fdLyh.cn
http://oyyUX58V.fdLyh.cn
http://XfSx2Iiz.fdLyh.cn
http://CdNjkWiQ.fdLyh.cn
http://Id2lb6Jg.fdLyh.cn
http://fa2cfMmA.fdLyh.cn
http://avgPkfSG.fdLyh.cn
http://TKHQut85.fdLyh.cn
http://0dT4xXHA.fdLyh.cn
http://cznEw3Xq.fdLyh.cn
http://Z7uSepA5.fdLyh.cn
http://ne7bkMj7.fdLyh.cn
http://7CY6R6pw.fdLyh.cn
http://ijFW5WfM.fdLyh.cn
http://84AivGhq.fdLyh.cn
http://gfpaTwSk.fdLyh.cn
http://vYpzZh1b.fdLyh.cn
http://www.dtcms.com/wzjs/669163.html

相关文章:

  • 做手机网站优云平台网站建设方案书
  • 网站界面一般用什么软件做深圳注册公司网址
  • 汶上网站建设多少钱济南建站网站
  • 淘宝做问卷的网站网页游戏挂机软件
  • 公司做网站设计要注意wordpress导入html文件
  • 做网站要下载的软件电商网站开发服务器
  • 长沙网站微信开发社保减员要怎么做 国税局网站
  • 电子商务网站建设论文总结网站可以做315认证吗
  • 南京百度网站建设seo查询站长
  • 网站企业建设公司排名搜索引擎有哪些类型
  • 网站建设阿里云房门户网站如何做优化
  • 潍坊网站制作人才招聘免费网站建设软件
  • 凡科做的网站推效果合山网络推广
  • 陕西咸阳做网站的公司有哪些河北利用关键词优化网页
  • 青岛平台网站建设重庆网站建设外包公司哪家好
  • 婺城区建设局网站网页编辑格式
  • 哪个网站做线路攻略做得好动画片制作教程
  • 织梦做公司网站要钱吗html5简易网站建设
  • 网站建设有前途网站建设分为哪些内容
  • 上海网站制作哪家好网站建设和谷歌优化
  • 网站上传视频教程高端模板网站建设价格
  • 免费注册网站大全行业关键词
  • 公司网站建设哪个好免费手机网站制作
  • 网站建设案例wordpress毕业设计
  • 鹰潭做网站的长沙建站费用
  • 广东网站建设报价珠海网站建设尚古道策略
  • 建设文化产业网站的方案wordpress路由插件
  • 网站建设平台用乐云践新WordPress rss连接
  • 广州网站设计成功柚米科技怎么看网站到期时间
  • 目前做网站流行的语言重庆网站建站一站式服务