![](https://img-blog.csdnimg.cn/20190721151353658.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法从浓密到稀疏
算法一直是我不擅长的,但是有时对程序的理解还是十分重要的! 每个星期,我会更新一篇算法文章.
我的目的不是成为算法工程师,我并不是很喜欢算法,也不擅长.
但是,算法是程序不可或缺的一部分.希望通过提升算法来提升自己! 2019.7.21
居十四
君子性非异也, 善假于物也.
展开
-
位图与布隆过滤器
位图与布隆过滤器 位运算 了解位图, 首先得了解二进制和位运算 大家可以通过下面的链接, 了解一下; JS中的按位操作符 你说你会位运算,那你用位运算来解下八皇后问题吧 位图 什么是位图 推荐阅读 小灰算法-位图 位图: 在我看来就是通过使用一个字符或者数字, 来代表多个 1或0 的状态; 从而节省空间; 举个例子: 用户1和用户3都是程序员. 用户2,4不是 就可以使用二进制 (1表示是, 0表示不是) 0101 来表示这个情况 大家可以参考代码: public class BitMap { // J原创 2020-11-01 10:46:27 · 144 阅读 · 0 评论 -
从背包问题看贪心,回溯,动态规划
从背包问题看贪心,回溯,动态规划 本文很多内容来源于极客时间上 数据结构与算法之美 这一专栏. 本文采用的编程语言是 JavaScript. 在学习贪心,回溯,动态规划时, 发现都有 背包问题; 想着总结一下, 分享给大家; 贪心 适用的问题 针对一组数据,我们定义了限制值和期望值,希望从中选出几个数据, 在满足限制值的情况下,期望值最大。 不适用: 前面的选择,会影响后面的选择下求最优解 此时贪心算法解决问题的思路,并不能给出最优解。 要证明贪心算法的正确性是比较难的.实际情况下要用反证法证明不能用贪心.原创 2020-10-18 17:27:03 · 533 阅读 · 0 评论 -
JS实现图的BFS和DFS
JS实现图的BFS和DFS 通过在极客时间上学习的算法内容. 我用JS实现图的BFS和DFS. 这里分享给大家. 本文使用图的存储方式是 邻接表 代码中使用的是无向图, 有向图类似. 例子都是从 s 到 t 最后一部分有全部的代码, 和一个小的测试用例 BFS BFS 也就是 Breadth First Search 广度优先搜索 可以理解为地毯式地搜索, 一层一层地搜索. 是不是想起树的层序遍历了? BFS 同样利用了一个 queue 作为辅助工具. 如果, 我们想要向上图一样遍历. 首先我们要解决下面原创 2020-09-26 10:36:11 · 1692 阅读 · 0 评论 -
js实现对链表相关算法
js实现对链表相关算法 为什么选择js 因为js是函数式编程,实现起来更加方便.而且现在调试工具也很方便.只有有浏览器就可以. js有很多优秀的特性.尤其是对数组的操作.还有正则表达式的支持等等. 写一般的算法是够了…最主要是方便! 背景 在极客时间上买了一个算法的课程.打算好好恶补一下算法! 在LeetCode上,有关于链表的题目,下面是按难度进行的排序. // 定义一个 ListNode f...原创 2019-07-27 12:02:10 · 326 阅读 · 0 评论