随笔分类 - 算法图解
摘要:一、广度优先搜索(breadth-first search)(寻找最短路径问题) 前往朋友家的最短路径?象棋中走最少步数获胜?人际网络中关系最近的摄影师? 最近3步从双子峰到金门大桥。 二、图的概念:节点和边 三、有路径否?哪条路径最短? 人际网络: 在广度优先搜索的执行过程中,搜索范围从起点开始逐
阅读全文
摘要:一、散列函数:无论你给它什么数据,它都还你一个数字。 要求: 1.一致:输入apple时得到的是4,那么每次输入apple时,得到的必须都是4。 2.将不同的输入映射到不同的数字。 结合散列函数(输出为索引)和数组创建散列表(hash table)的数据结构。python提供的散列表实现为字典。 二
阅读全文
摘要:一、分而治之(divide and conquer,D&C) d&c解决问题的两个步骤: 1.找基线条件(最小单位)or(只剩一个或为空); 2.将问题的规模缩小,不断递归直到基线条件; 利用循环求和: 1 def sum(arr): 2 total = 0 3 for i in arr: 4 to
阅读全文
摘要:一、二分查找 思想:从中间开始查找。 时间复杂度:O(logN)。 eg.查英文字典。 eg.猜0-100大小数从50开始猜。 二分查找是一种算法,其输入一个有序的元素列表。如果要查找的元素包含在列表中,二分查找返回其位置,否则返回null(或者-1)。 1 import math 2 3 def
阅读全文

浙公网安备 33010602011771号