
图解算法
文章平均质量分 52
王庭玉
这个作者很懒,什么都没留下…
展开
-
图解算法 第2章—选择排序
本章内容两种最基本的数据结构--数组和链表学习排序算法,很多算法仅在数据是有序的才有用,参照二分查找数组和链表(精确到具体的地址之后的执行)内存的工作原理-就像蜂巢的存储柜一样,例如feoffeeb就是内存的地址。有两种基本的存储方式数组和链表。下面我们来看看他们的定义,以及优缺点。数组他是按照地址有序排列,优点:可以通过索引快速读取(元素的位置称为索引)。缺点:在插入和删除时,会改动数据后面的索...原创 2018-07-16 16:19:26 · 200 阅读 · 0 评论 -
图解算法 第6章 广度优先搜索
本章内容 学习数据结构图来建立网络模型 学习广度优先搜索(breadth-first search BFS),回答最短路径问题 学习有向无向图 学习拓扑排序:指出节点之间的依赖关系 在所知的算法中,图算法应该是最有用的 情景导入 你家在杭州某地,你要去嘉兴参加活动。这个时候你会有n种选择到达嘉兴活动现场,这个时候你就要考虑时间长短以及换成的次数。这种问题称为最短路径问题(shortes...原创 2018-07-18 17:16:45 · 238 阅读 · 0 评论 -
图解算法 第五章 散列表
本章学习 散列表是最有用的基础数据结构,Python中叫字典dict() 散列表的内部机制:实现、冲突、散列函数 情景导入(数组的索引时间为O(1)) 你现在是一个杂货店老板的孩子,暑假你帮忙打理小店。第一件事就是记下每件商品的价格。你可以聪明的按照类别来分:水果、香烟、零食、饮料。但是因为你是个新手,你也可能没有分类的记下了每个商品的价格,例如:红富士苹果:3.9 元/斤,利群香烟:20元...原创 2018-07-18 11:06:54 · 308 阅读 · 0 评论 -
图解算法 第10章 k最近邻算法
本章内容 k邻近算法创建分类系统 学习特征抽取 学习回归 学习k最近邻居算法的应用和局限性 k最近邻居 k-nearest neighbours KNN 特征抽取 坐标轴中两个点的距离:勾股定理 OCR图书数字化 提取线段,点,曲线等特征。...原创 2018-07-23 16:50:01 · 257 阅读 · 0 评论 -
图解算法 第9章 动态规划
本章内容 学习动态规划,这是一种解决辣手问题的方法,将问题分解成小问题 学习如何设计问题的动态规划解决方案 背包问题 每个动态规划问题都从网格开始 再加入一个物品如何比如iPhone 2000元 1磅 增加一件更小的商品呢?0.5磅,1000元 当且仅当每个字问题是离散的,即不依赖其他子问题时,动态规划才管用。 最优解可能大致包不满。 动态规划问题的感想 动态规划...原创 2018-07-23 16:44:27 · 268 阅读 · 0 评论 -
图解算法 第8章 贪婪算法
本章内容 学习处理不可能完成的任务:没有快速解决的办法 学习识别np完全问题,以免浪费时间去寻找解决问题的方法 学习近似算法,使用它快速找到np问题的近似解 学习贪婪策略 教师调度问题 这个问题好像很难,但是其实简单的很,选出最早结束的课,然后选择第一堂课结束之后才开始的课里结束最早的。以此类推。 通过每步都选择最优解,最终的到全局最优解。 背包问题 找到一个大致...原创 2018-07-23 16:26:19 · 451 阅读 · 0 评论 -
图解算法 第四章 快速排序
本章内容 分而治之:通用问题的解决方法 devide and conquer D&C,经典的递归式解决问题的方法 快速排序:使用分而治之的快速排序策略 分而治之 一:1680*640的小土地,能分出多少个最大的正方形(求最大公倍数) 找出基线条件 不断将问题缩小 快速排序 基线条件:设计数组递归函数,基线条件通常是数组为空或者包含一个元素。 Haskell编程:没有wh...原创 2018-07-17 18:32:44 · 205 阅读 · 0 评论 -
图解算法 第三章 递归
本章内容 递归:调用自身的函数,是很多算法都在使用的编程方法 递归的核心:基线条件(base case)和递归条件(recursive case) 递归的缺点:占用大量空间,容易导致无限循环。 优化递归的方法:使用循环,用尾递归 栈(stack):有两种操作-压入&弹出 调用栈:用于存储多个函数变量 调用栈时,计算机首先为该函数调用一块内存。调用另一个函数时,当前函数暂停并处...原创 2018-07-17 16:19:20 · 216 阅读 · 0 评论 -
图解算法 第1章-算法简介
算法简介 算法:一组完成任务的指令。 对数:log2ˉ1024=10。对数是幂运算的逆运算 二分查找:执行步骤从40亿缩短为32个,2^32约等于40亿。 线性时间(linear time):最多需要猜测的次数和列表长度相同 大O:算法需要执行的操作数(算法时间表示:次数,执行一次时间不考虑?) 算法时间:除了考虑大O:他表示最糟糕的情况下的运行时间。还要考虑平均时间 旅行商:前往n...原创 2018-07-16 16:45:13 · 210 阅读 · 0 评论 -
图解算法 第7章 狄克斯特拉算法
本章内容 加权图--使广度优先搜索失效,提高或增加某边权重(相当于公交地图的时间) 环&负权重--让狄克斯特拉算法不管用 狄克斯特拉算法(BFS:) 狄克斯特拉算法4个步骤: 找出最“便宜”的节点,最短时间内到达的节点 更新节点的邻居的开销 重复,直到对每个节点完成此操作 计算最终路径 权重weight:每条边的数字 加权图weight graph,非加权图unweigh...原创 2018-07-19 17:19:59 · 678 阅读 · 0 评论