19.10.16 16:03 | 后端 | UNLOCK

Java Atomic简介

所谓Atomic,翻译过来就是原子。原子操作一般都是底层通过CPU的指令来实现。而atomic包下的这些类,则可以让我们在多线程环境下,通过一种无锁的原子操作来实现线程安全。
READ MORE >>>
19.10.15 16:07 | 后端 | UNLOCK

Java锁机制

一起了解一下Java中的锁机制
READ MORE >>>
19.09.23 15:36 | 面试 | UNLOCK

9月面试总结

最近在面试新工作,记录一下面试中问到的问题,以及我的理解。
READ MORE >>>
19.09.11 18:29 | LEETCODE | UNLOCK

LEETCODE:数组(一)

LEETCODE数组题目刷起来!
READ MORE >>>
19.09.09 18:47 | LEETCODE | UNLOCK

LeetCode刷题:贪心、分治、回溯和动态规划

贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。分治,字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。回溯算法实际上一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解,当发现已不满足求解条件时,就“回溯”返回,尝试别的路径。动态规划是运筹学的一个分支,是求解决策过程最优化的数学方法。
READ MORE >>>
19.09.06 14:54 | LEETCODE | UNLOCK

LeetCode刷题:图

图是表示物件与物件之间的关系的数学对象,是图论的基本研究对象。一个不带权图中若两点不相邻,邻接矩阵相应位置为0,对带权图(网),相应位置为∞。
READ MORE >>>
19.09.05 13:54 | LEETCODE | UNLOCK

LeetCode刷题:二叉树和堆

二叉树是每个结点最多有两个子树的树结构。堆通常是一个可以被看做一棵完全二叉树的数组对象。
READ MORE >>>
19.09.04 10:32 | LEETCODE | UNLOCK

LeetCode刷题:散列表和字符串

散列表的核心是散列函数和冲突解决算法,以及装载因子过大时如何扩容。字符串是编程中一定会出现的问题,变种非常多,反转,反转单词,字串,最长字串,最长子序列等等,有时解决问题需要多种数据结构与算法的结合。
READ MORE >>>