前言
==
排序,查找算法种类繁多, 全部熟记不太现实,或许在二者之中各找寻一个适合自己的算法熟练使用它会更好。因此今天我分享几种常见算法供大家参考,它们分别是:**二分查找,冒泡排序与快速排序。**代码不长,背诵记忆也是一个不错的选择,我这里提供了模板。如果哪一步不明白,可以多print几下看看数据的变化,或者手写模拟过程。
目录
前言
二分查找
模板
思路
复杂度
冒泡排序
模板
思路
复杂度
快速排序
模板
简介
思路
思考
模拟图解
默认参数
复杂度
想说的话
二分查找
====
模板
–
def binary_search(nums, target):
二分查找前提是数据是要有序的
nums.sort()
左指针指向第一个元素
left = 0
右指针指向最后一个元素
right = len(nums) - 1
注意是小于等于
while left <= right:
//2表示整除2向下取整
mid = left + (right - left) // 2
if nums[mid] =