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

o2o型网站wordpress手机客户端

o2o型网站,wordpress手机客户端,网站制作开发的步骤和方法,建站至尊快速排序#xff08;Quick Sort#xff09; 快速排序是一种高效的排序算法#xff0c;采用分治法#xff08;Divide and Conquer#xff09;策略。它的基本思想是#xff1a;选择一个基准元素#xff08;pivot#xff09;#xff0c;将数组分为两部分#xff0c;使得…快速排序Quick Sort 快速排序是一种高效的排序算法采用分治法Divide and Conquer策略。它的基本思想是选择一个基准元素pivot将数组分为两部分使得左边部分的元素都小于基准元素右边部分的元素都大于基准元素然后递归地对左右两部分进行排序。 快速排序的步骤 选择基准元素从数组中选择一个元素作为基准通常选择第一个、最后一个或中间元素。分区操作将数组分为两部分左边部分的元素小于基准元素右边部分的元素大于基准元素。递归排序对左右两部分递归地应用快速排序。合并结果由于分区操作已经保证了左边部分小于右边部分最终数组自然有序。 时间复杂度 最坏情况O(n²) —— 当每次选择的基准元素都是最小或最大元素时。最好情况O(n log n) —— 当每次选择的基准元素都能将数组均匀分为两部分时。平均情况O(n log n) 空间复杂度 O(log n) —— 递归调用栈的深度。 Python 实现 def quick_sort(arr):if len(arr) 1:return arrpivot arr[len(arr) // 2] # 选择中间元素作为基准left [x for x in arr if x pivot] # 小于基准的部分middle [x for x in arr if x pivot] # 等于基准的部分right [x for x in arr if x pivot] # 大于基准的部分return quick_sort(left) middle quick_sort(right) # 递归排序并合并# 示例使用 arr [3, 6, 8, 10, 1, 2, 1] sorted_arr quick_sort(arr) print(排序后的数组:, sorted_arr)输出结果 排序后的数组: [1, 1, 2, 3, 6, 8, 10]快速排序的详细过程 以数组 [3, 6, 8, 10, 1, 2, 1] 为例 第一轮 选择基准元素 10假设选择最后一个元素。分区结果 左边部分[3, 6, 8, 1, 2, 1]右边部分[] 递归排序左边部分。 第二轮 选择基准元素 1左边部分的最后一个元素。分区结果 左边部分[]右边部分[3, 6, 8, 2] 递归排序右边部分。 第三轮 选择基准元素 2右边部分的最后一个元素。分区结果 左边部分[]右边部分[3, 6, 8] 递归排序右边部分。 第四轮 选择基准元素 8右边部分的最后一个元素。分区结果 左边部分[3, 6]右边部分[] 递归排序左边部分。 第五轮 选择基准元素 6左边部分的最后一个元素。分区结果 左边部分[3]右边部分[] 递归排序左边部分。 合并结果 最终排序结果为 [1, 1, 2, 3, 6, 8, 10]。 快速排序的优缺点 优点 平均时间复杂度为 O(n log n)性能优异。是原地排序算法不需要额外的存储空间。在实际应用中表现良好是常用的排序算法之一。 缺点 最坏情况下时间复杂度为 O(n²)但可以通过优化基准选择策略来避免。不是稳定的排序算法相同元素的相对位置可能改变。 优化快速排序 随机选择基准元素 避免最坏情况的发生提高算法的稳定性。 三数取中法 选择第一个、最后一个和中间元素的中位数作为基准。 小数组使用插入排序 当数组规模较小时插入排序的效率更高。 优化后的快速排序实现 import randomdef quick_sort_optimized(arr):if len(arr) 1:return arrpivot random.choice(arr) # 随机选择基准元素left [x for x in arr if x pivot]middle [x for x in arr if x pivot]right [x for x in arr if x pivot]return quick_sort_optimized(left) middle quick_sort_optimized(right)# 示例使用 arr [3, 6, 8, 10, 1, 2, 1] sorted_arr quick_sort_optimized(arr) print(优化后的排序数组:, sorted_arr)总结 快速排序是一种高效的排序算法适用于大规模数据的排序。通过优化基准选择策略可以进一步提高其性能和稳定性。
http://www.hkea.cn/news/14494937/

相关文章:

  • 微表单网站厂房设计装修公司
  • 深圳高端建设网站全国建筑企业资质四库一平台
  • 南宁网站建设服务公司龙之向导外贸向导
  • 如何网站客户案例旅游社网站建设规划书
  • 有哪些企业可以做招聘的网站有哪些方面wordpress 站群插件
  • 成都高投建设开发有限公司网站学校网站源码
  • html5网站演示潮汕学院网站开发
  • 动漫做暧昧视频网站软件开发步骤包括哪些
  • 进入百度官网首页重庆seo网站建设
  • 托管网站是什么意思刚进外贸公司一个月多少钱
  • 网站建设预估费用社区问答网站开发
  • 网站建设 - 碧诺网络威海公司注册
  • 如何制作自己网站可口可乐软文营销案例
  • 贵州省建设厅网站造价工程信息做外贸月薪3万要多久
  • 住房建设部投诉网站西安工程网站建设
  • 扬州市广陵区城乡建设局网站达州注册公司
  • app小程序网站开发是什么持续推进网站建设
  • 网站分页js关于网站建设的技巧
  • 做会议活动的网站电商网站怎样做
  • 公司推广发帖网站怎么做新闻专业为啥学网页制作
  • 建网站浩森宇特暴雪游戏有哪些
  • 企业网站开发市场网站建设课设心得体会
  • 做众筹网站h5移动端网站模板
  • 河东做网站的公司政协网站法治建设版块
  • 企业网站建设基本标准阿里巴巴的网站架构
  • 国家信用信息公示系统官网天津如何做seo优化服务
  • 关于网站开发的学校上海传媒公司总裁李闪闪
  • 卸载西部数码网站管理助手贵阳仿站定制模板建站
  • 发布建设网站黑河市建设局网站
  • 切实加强门户网站建设长春财经学院