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

公司想为一个产品做多个网站花都网站建设公司

公司想为一个产品做多个网站,花都网站建设公司,自己怎么做VIP视频解网站,手机网站建设多钱python实现插入排序、快速排序 算法步骤: Python实现插入排序快速排序算法步骤: Python实现快速排序算法时间复杂度 插入排序是一种简单直观的排序算法。它的基本思想是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫…

python实现插入排序、快速排序

        • 算法步骤:
      • Python实现插入排序
      • 快速排序
        • 算法步骤:
      • Python实现快速排序
      • 算法时间复杂度

插入排序是一种简单直观的排序算法。它的基本思想是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。

算法步骤:
  1. 从第一个元素开始,认为它已经被排序。
  2. 取出下一个元素,在已排序的元素序列中从后向前扫描。
  3. 如果该元素(已排序)大于新元素,将该元素移到下一位置。
  4. 重复步骤3,直到找到已排序的元素小于或等于新元素的位置。
  5. 将新元素插入到该位置后。
  6. 重复步骤2-5,直到所有元素均排序。

Python实现插入排序

def insertion_sort(lst):for i in range(1, len(lst)):key = lst[i]j = i - 1while j >= 0 and key < lst[j]:lst[j + 1] = lst[j]j -= 1lst[j + 1] = keyreturn lst# 示例
lst = [12, 11, 13, 5, 6]
sorted_lst = insertion_sort(lst)
print("排序后的列表:", sorted_lst)

快速排序

快速排序是一种分治算法,通常被认为是目前最快的排序算法之一。它的基本思想是通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个过程可以递归进行,以达到整个数据变成有序序列。

算法步骤:
  1. 从数列中挑出一个元素,称为“基准”(pivot)。
  2. 重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准的后面(相同的数可以到任一边)。在这个分区结束之后,该基准就处于数列的中间位置。
  3. 递归地(recursive)把小于基准值元素的子数列和大于基准值元素的子数列排序。

Python实现快速排序

def quick_sort(lst):if len(lst) <= 1:return lstelse:pivot = lst[len(lst) // 2]left = [x for x in lst if x < pivot]middle = [x for x in lst if x == pivot]right = [x for x in lst if x > pivot]return quick_sort(left) + middle + quick_sort(right)# 示例
lst = [3, 6, 8, 10, 1, 2, 1]
sorted_lst = quick_sort(lst)
print("排序后的列表:", sorted_lst)

算法时间复杂度

  • 插入排序的时间复杂度为O(n^2),适用于小规模数据或基本有序的数据。
  • 快速排序的平均时间复杂度为O(n log n),最差时间复杂度为O(n^2),但由于其常数因子较小,且具有较好的性能,因此在实际应用中广泛使用。

通过以上实现,可以看到这两种排序算法在不同场景下的适用性。插入排序算法简单直观,适用于小规模数据;快速排序则效率高,适用于大规模数据。

http://www.ds6.com.cn/news/87007.html

相关文章:

  • 建立企业的网站有哪几种方案国色天香站长工具
  • 网站开发基础教程免费的推广平台
  • 河北新出现的传染病贵阳seo网站管理
  • 济南网站建设q479185700惠怎么做起泡胶
  • 推荐网站建设品牌百度推广开户渠道公司
  • 仿 手机 网站模板html源码html期末大作业个人网站制作
  • 商标查询网站怎么做网络广告营销的特点
  • 专门做机器人大战的网站叫什么常用于网站推广的营销手段是
  • 2023全国疫情爆发时间表东莞seo建站公司哪家好
  • 最超值的锦州网站建设广州seo招聘网
  • 做网站 价格网络视频营销策略有哪些
  • 基础建设期刊在哪个网站可以查深圳网络推广外包
  • 建设文化网站的目的和意义推广app赚佣金平台
  • 建设网站的要求吗seo入门教学
  • 企业网站和信息化建设关键词排名查询网站
  • 电子科技网站建设建设网站公司
  • php网站开发哪个培训学校好重庆网站seo教程
  • com域名的网站百度网页浏览器
  • html5动态效果的网站是怎么做的整合营销的概念
  • 昌邑做网站的公司网络营销郑州优化推广公司
  • 系统门户网站建设常用功能如何在百度上开店铺
  • 开发建设网站免费推广网站大全下载安装
  • 建设项目竣工验收公示网站百度公司官方网站
  • 做网站就业要会什么怎样通过网络销售自己的产品
  • 哈尔滨网站建设优化浙江网站建设推广
  • apache限制域名访问网站百度seo关键词优化方案
  • yy4008青苹果高清电影院安卓优化大师旧版本下载
  • 山西疫情严重吗现在沈阳seo关键词排名
  • 怎么做网站浏览量分析深圳网络推广代运营
  • 微信官方版官方网站湖南网站seo营销