随笔分类 - 算法与数据结构
摘要:求解从1到6的最短路径。 python代码实现:(以A-F代表1-6)
阅读全文
摘要:假如你有很多书,你把这些书放在一个箱子里(注意这个箱子只有顶面是开口的,为了好理解你可以想象为桶一样的结构。) 当这个箱子里有10本书,你想再放进一本,就把这本书放在最上面。 当你想要读一本书的时候,你只能拿出最上面的那本书来读,然后“删除”这本书。 这种数据结构就是栈。 栈(stack)又名堆栈,
阅读全文
摘要:# 部分摘自《算法图解》,转载请留言联系 有时候,需要在内存中存储一系列的元素。假设你要编写一个管理待办事件的程序,你需要把这些管理待办事件储存在内存中。 用数组和链表分别是怎么存储这些数据的呢? 数组 数组 数组意味着所有待办事件在内存中都是相连的(紧靠在一起的)。例如内存有16个格子,你的待办事
阅读全文
摘要:大O表示法指出算法有多快。例如,假设列表包含n个元素。简单查找需要检查每个元素,因此需要执行n次操作。使用大O表示法,这个运行时间为O(n)。主要单位不是秒啊,大O表示法值得并非以秒为单位的速度,而是操作数,操作了几次。它指出了算法运行时间的增速。 大O表示法指出的是最槽情况下的运行时间。如果你用简
阅读全文
摘要:什么是Hash Hash算法,简称散列算法,也成哈希算法(英译),是将一个大文件映射成一个小串字符。与指纹一样,就是以较短的信息来保证文件的唯一性的标志,这种标志与文件的每一个字节都相关,而且难以找到逆向规律。 举个列子: 服务器存了10个文本文件,你现在想判断一个新的文本文件和那10个文件有没有一
阅读全文