Python中如何应用二分查找算法进行笔记整理?

2026-05-28 19:101阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1684个文字,预计阅读时间需要7分钟。

Python中如何应用二分查找算法进行笔记整理?

算法:解决最高效问题的方法 + 算法之二的分治法 + 需求:有一个按从小到大排序的数字列表 + 传统遍历方式 + nums=[-3, 4, 7, 10, 13, 21, 43, 77, 89] + for i in nums: if i==10: print(i) break

Python中如何应用二分查找算法进行笔记整理?

算法:最高效解决问题的办法

算法之二分法

需求:有一个按照从小到大顺序排列的数字列表

传统遍历方式

nums = [-3,4,7,10,13,21,43,77,89]
for i in nums:
if i == 10:
print(i)
break
print(i)

打印:
-3
4
7
10
# 找到10的时候才结束,这就是遍历,从左到右查询,这种效率是非常底的,万一我想要查找的值不是10,而是上万呢?难道还要遍历列表一个一个找?这不现实。

二分法算法方式

#<==可以使用sort()先进行一个升序

二分法的原理就是先获取到列表中间的值,对比需要查找的值。

如果查找的值比中间值大了,则从中间值开始到左边的值全部切成新列表重新计算。

如果查找的指比中间值小了,则从中间值开始到右边的值全部切成新列表重新计算。

最后计算结果查找的值既不大于中间值也不小于中间值的时候,则证明找到了需要的值。

阅读全文

本文共计1684个文字,预计阅读时间需要7分钟。

Python中如何应用二分查找算法进行笔记整理?

算法:解决最高效问题的方法 + 算法之二的分治法 + 需求:有一个按从小到大排序的数字列表 + 传统遍历方式 + nums=[-3, 4, 7, 10, 13, 21, 43, 77, 89] + for i in nums: if i==10: print(i) break

Python中如何应用二分查找算法进行笔记整理?

算法:最高效解决问题的办法

算法之二分法

需求:有一个按照从小到大顺序排列的数字列表

传统遍历方式

nums = [-3,4,7,10,13,21,43,77,89]
for i in nums:
if i == 10:
print(i)
break
print(i)

打印:
-3
4
7
10
# 找到10的时候才结束,这就是遍历,从左到右查询,这种效率是非常底的,万一我想要查找的值不是10,而是上万呢?难道还要遍历列表一个一个找?这不现实。

二分法算法方式

#<==可以使用sort()先进行一个升序

二分法的原理就是先获取到列表中间的值,对比需要查找的值。

如果查找的值比中间值大了,则从中间值开始到左边的值全部切成新列表重新计算。

如果查找的指比中间值小了,则从中间值开始到右边的值全部切成新列表重新计算。

最后计算结果查找的值既不大于中间值也不小于中间值的时候,则证明找到了需要的值。

阅读全文