Python 搜索与排序算法详解
1. 线性搜索运行时间
线性搜索是从列表开头开始,逐个检查元素是否为目标值。在一个包含 10,000,001 个元素的列表中,对靠近开头、中间和结尾的元素进行搜索,比较了三种线性搜索方法(while 循环、for 循环、哨兵搜索)和 Python 内置的 list.index 方法的运行时间,结果如下:
| Case | list.index | sentinel | for | while |
|---|---|---|---|---|
| First | 0.01 | 0.01 | 0.01 | 0.01 |
| Middle | 106 | 697 | 515 | 1261 |
| Last | 212 | 1394 | 1029 | 2673 |
除了第一种情况,速度差异不大,while 循环线性搜索大约是 Python 内置方法的 13 倍,for 循环搜索和哨兵搜索分别约为 5 倍和
订阅专栏 解锁全文
758

被折叠的 条评论
为什么被折叠?



