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

山东网站备案号自助网站建设公司电话

山东网站备案号,自助网站建设公司电话,加强网站人才建设,绿茶直播提示#xff1a;文章写完后#xff0c;目录可以自动生成#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、Python数据结构与算法的详细介绍1.Python中的常用的分治算法2. 分治算法3.详细的分治代码1#xff09;一种常见的分治算法 总结 前言 提示#xff1a;这… 提示文章写完后目录可以自动生成如何生成可参考右边的帮助文档 文章目录 前言一、Python数据结构与算法的详细介绍1.Python中的常用的分治算法2. 分治算法3.详细的分治代码1一种常见的分治算法 总结 前言 提示这里可以添加本文要记录的大概内容 第一天Python数据结构与算法的详细介绍 第二天五种常见的排序算法 第三天两种常见的搜索算法 第四天两种常见的递归算法 第五天一种常见的动态规划算法 第六天一种常见的贪心算法 第七天一种常见的分治算法 提示以下是本篇文章正文内容下面案例可供参考 一、Python数据结构与算法的详细介绍 1.Python中的常用的分治算法 以下是Python中的一些常用算法 2. 分治算法 分治算法 将问题划分为几个规模较小的子问题分别解决然后将子问题的解合并得到原问题的解。快速排序和归并排序是分治算法的典型例子。 3.详细的分治代码 1一种常见的分治算法 def quick_sort(arr):# 快速排序的主函数def partition(low, high):# 选择最右边的元素作为基准pivot arr[high]i low - 1 # 较小元素的索引for j in range(low, high):# 如果当前元素小于或等于基准if arr[j] pivot:i 1# 交换arr[i]和arr[j]arr[i], arr[j] arr[j], arr[i]# 交换arr[i 1]和arr[high] (或基准)arr[i 1], arr[high] arr[high], arr[i 1]return i 1# 基本情况如果数组为空或只有一个元素则直接返回if len(arr) 1:return arrelse:# 递归地对数组进行排序pivot_index partition(0, len(arr) - 1)left_arr quick_sort(arr[:pivot_index])right_arr quick_sort(arr[pivot_index 1:])# 合并排序后的数组这里实际上没有真正的合并操作因为数组是就地排序的# 但为了保持函数调用的完整性我们仍然返回合并后的结果即原数组return left_arr [arr[pivot_index]] right_arr# 注意在实际应用中为了效率我们通常不会真的将数组拆分再合并 # 因为Python的列表切片操作是O(n)时间复杂度的。这里的返回语句只是为了演示分治的思想。 # 在实际实现中我们会在原地对数组进行排序避免额外的空间开销。# 归并排序的实现 def merge_sort(arr):# 归并排序的主函数def merge(left, right):sorted_array []i j 0# 合并两个已排序的数组while i len(left) and j len(right):if left[i] right[j]:sorted_array.append(left[i])i 1else:sorted_array.append(right[j])j 1# 添加剩余的元素如果有sorted_array.extend(left[i:])sorted_array.extend(right[j:])return sorted_array# 基本情况如果数组为空或只有一个元素则直接返回if len(arr) 1:return arrelse:# 找到数组的中间点将数组分为两部分mid len(arr) // 2left_half merge_sort(arr[:mid])right_half merge_sort(arr[mid:])# 合并两个已排序的部分return merge(left_half, right_half)# 测试代码 if __name__ __main__:test_array [38, 27, 43, 3, 9, 82, 10]print(Original array:, test_array)# 使用快速排序quick_sorted_array quick_sort(test_array[:]) # 使用切片创建数组的副本以避免修改原数组print(Quick sorted array:, quick_sorted_array)# 使用归并排序merge_sorted_array merge_sort(test_array[:]) # 同样使用切片print(Merge sorted array:, merge_sorted_array)总结 提示这里对文章进行总结 例如以上就是今天要讲的内容本文简单介绍一种常见的分治算法。
http://www.dnsts.com.cn/news/58676.html

相关文章:

  • 保定网站设计推荐做下载网站用什么程序好
  • 手机网站 焦点图wordpress服务器环境
  • 陕西哪些公司做企业网站腾讯企业邮箱域名购买
  • 网站建设广告平台推广业务推广方式
  • 网站footer设计金华做企业网站公司
  • 佛山做网站永网天津公司网站如何制作
  • 手机网站建设实验报告功能网站开发
  • 高速公路建设网站人才网最新招聘信息网
  • 网站建设报告 商业价值做网络传销网站犯罪吗
  • 电子商务网站开发课题简介鹿泉区住房建设局网站
  • 网站里面的视频功能怎么做自己建网站的费用
  • 高价词网站源码wordpress更改链接地址
  • 织梦如何仿手机网站做网站简单么
  • 家装企业网站系统下载2345网址导航下载官网
  • 嵌入式网站开发学习平邑哪里有做网站的
  • 自己电脑做网站服务器小工具网站建设报价套餐
  • 牡丹江建站网盟官方网站
  • 沙坪建设集团网站互联网营销 网站 推荐
  • 商城网站包括哪些模块xml网站地图制作
  • 个人网站上线流程wordpress建一个网站
  • 网站建设中怎么编辑图片西安 美院 网站建设
  • 国外电商网站如何建立自适应网页设计尺寸
  • 广西城乡住房建设厅网站手机logo制作软件
  • 绑定手机网站文件夹湖北专升本网站建设
  • 安徽六安金寨县网站谷歌seo做哪些
  • 免费做店招哪个网站好做网站公司会场主持台词
  • 晋城网站seo站长工具高清
  • 网站开发要学什么网站升级对外解决方案
  • 网站网页制作企建设部注册中心网站
  • 宁波网站建设选择荣胜网络站长平台社区