
算法学习笔记
文章平均质量分 68
风中迷鹿
人生苦短,我用Python!记录学习Python和基于Python的算法、图像处理之类的学习笔记。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
递归和栈
递归递归是很多算法中都使用的一种编程方法。递归包含两部分:基线条件和递归条件。基线条件是函数不再调用自己的条件,而递归条件就是继续调用自己递归的条件。下面举个例子来说明什么是基线条件?什么是递归条件例:编写一个倒计时函数,从3倒计时到1结束# 倒计时3 2 1def dict(i): print(1) # 基线条件 if i <= 1: return...原创 2018-05-17 15:55:48 · 1258 阅读 · 0 评论 -
选择排序
选择排序简介选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。以上介绍出自360百科例子对列表[5,3,6,2,10]进行选择排序代码# 升序排列# 定义函数findsmallest()查找列表中的最小元素def findsmallest(list): ...原创 2018-05-14 20:14:32 · 208 阅读 · 0 评论 -
二分查找
二分查找简介二分查找是一种算法,它要处理的元素列表必须是个有序。因为二分查找每次都会通过比较中间那个数与要求的数的大小,来舍弃一般的列表。如果要查找的元素包含在列表中,二分查找返回其位置;否则返回null。例子从1到100中选定一个数,然后你来猜测。你每次猜测后,我只会告诉你大了、小了或正确。(假设选定的是75)(1)针对这个例子,假如从1开始猜的话,那么需要75次才会猜对。(2)如果使用二分查找...原创 2018-05-12 16:21:34 · 249 阅读 · 0 评论 -
D&C与快速排序
D&C简介D&C的意思是分而治之,它是一种著名的递归式问题解决方法。使用D&C来解决问题的过程包括两个步骤:(1) 找出基线条件,这种条件必须尽可能简单(2) 不断将问题分解(或者说缩小规模),直到符合基线条件例子求列表[2,4,6]的和(1) 找出基线条件。列表中不包含元素(2) 缩小问题规模。将求列表[2,4,6]的和转化为任意取出一个元素[2]与剩余列表[4,6]的和...原创 2018-06-06 16:19:23 · 595 阅读 · 0 评论