Python里面几种排序算法的比较,sorted的底层实现,虽然我们知道sorted的实现方式,但是却写不出这样的速度

  1. 云栖社区>
  2. 博客>
  3. 正文

Python里面几种排序算法的比较,sorted的底层实现,虽然我们知道sorted的实现方式,但是却写不出这样的速度

雁横 2018-07-21 23:28:35 浏览1983
展开阅读全文

算法与数据结构基础

原文链接:http://note.youdao.com/noteshare?id=7b9757930ce3cc9e0a5e61e4d0aa9ea2⊂=2726FFA02ADE4E74A302D8DA7646FB46

查找算法:

二分查找法:

简介:二分查找法又被称为折半查找法,用于预排序的查找问题

过程

  1. 如果在列表a中查找元素t,先将列表a中间位置的项与查找关键字t比较,如果两者相等,则成功。
  2. 否则,将表分为前后两个子表
  3. 如果中间位置大于t,则进一步查找前一子表,否则,查找后一子表
  4. 重复上述过程

优劣

  1. 时间复杂度为O(log~2~N),比较快
  2. 缺点就是必须是有序列表

排序算法:

冒泡排序

简介:两两比较大小,如果不满足升序关系,则交换

过程:略

优劣:

  1. 时间复杂度为O(N^2^),速度较慢
  2. 稳定

选择排序

简介:找出最小值,然后放入一个新的列

网友评论

登录后评论
0/500
评论
雁横
+ 关注