
算法
布道
专注但要有大局观(先大后小,思路为先,实验为辅)
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
高逼格的位运算小结
位算法的效率有多高这里就不讲了,位运算其实有很多技巧,比如判断是否是2的幂次方、判断奇偶性、交换两个数、找出不重复的数、找出不大于N的最大的2的幂指数,掌握这些可以装逼。 位与 & 两位数同时为“1”,结果才为“1”,否则为0 0&0=0; 0&1=0; 1&0=0; 1&...原创 2019-06-01 21:26:25 · 1262 阅读 · 0 评论 -
经度算法:花式链表中查找
在面试中有关链表的提问,真可谓经久不衰。说实话笔者对算法也是研究不太深,而大多数人更要注重后天的积累(套路见多了就会了),天才毕竟是少数人。上次谈过逆转单向链表,今天将分享单链表中查找:是否存在环以及环入口、寻找中位数、倒数第K个节点。快慢指针快慢指针中的快慢指的是移动的步长,即每次向前移动速度的快慢。例如可以让快指针每次沿链表向前移动2,慢指针每次向前移动1次。class ...原创 2019-05-15 16:18:12 · 869 阅读 · 0 评论 -
经度算法:逆转单向链表
逆转单向链表,听上去是一个非常简单的题目,但如果在面试中遇到它,能够将它完完整整没有 bug 的写出来是着实需要费一番功夫的。期望在那急短的笔试题环节就轻松搞定这道题,那真是非常有算法天赋的人才能做到的事。天才总是极少数的,多数都是像我这样的庸才。单向的链表,不同于 Java 里面的 LinkedList(双向的链表)。链表中每个节点之间通过 next 指针串接起来,会有一个链表头和链表尾指针 h...原创 2019-03-26 22:07:05 · 619 阅读 · 0 评论 -
经度算法:磁盘多路归并排序
如果说语言的基础语法和业务逻辑编码的经验积累是术,那么数据结构与算法思想、设计模式就是道。就好像笑傲江湖里面华山派的剑宗、气宗一样,在最前期的时候剑宗的门人一般要比气宗的门人厉害,因为他们剑法精炼,但是到了后期,当其中的门人把内你练上去之后,他们则会比剑宗的人更加厉害。当然只偏向于剑法而忽略内力修为,或者只注重内力修为而不注重剑法修为都是不对的,我们应该两者并重。多路归并排序在大数据领域也是常...原创 2019-03-22 23:10:35 · 1037 阅读 · 0 评论 -
值得收藏算法可视化工具
首先推荐一个很多人都知道的旧金山大学数据结构和算法,其次再推荐一个github中很火的algorithm-visualizer(可以模拟运行过程)。原创 2019-01-03 19:35:10 · 2018 阅读 · 0 评论 -
深入简出的掌握BitMap
Bitmap作为被各种框架广泛引用的一门技术,它的原理其实很简单。bit即比特,而Bitmap则是通过bit位来标识某个元素对应的值(支持 0、1 两种状态),简单而言,Bitmap 本身就是一个 bit 数组。目录1.特性高性能存储空间小2.适用场景3.局限性4.实现一个吧开源利器组件-RoaringBitmap5.发展需要6.相关开源应用Redis...原创 2018-10-10 17:39:25 · 3125 阅读 · 0 评论 -
必须通晓的算法
1、选择排序class SelectionSorter { private int min; public void Sort(int[] arr) { for (int i = 0; i < arr.Length - 1; ++i) { min = ...原创 2014-04-19 18:33:14 · 3174 阅读 · 1 评论