0%

LeetCode算法经典题集(四),算法题题号:39、40、41、42、43、44、45,其中 43 题是经典的大数相乘问题,解法中也包括了大数相加算法,纯字符串解决;41 题(缺失的第一个正数)题目比较有趣,看似简单,但限制了时间复杂度导致实际上不好操作,据说字节跳动公司某次面试就出了类似题目
阅读全文 »

LeetCode算法经典题集(三),算法题题号:32、33、34、36、37,包含了回溯法、二分查找法、动态规划、位运算,其中 37 题是很经典的回溯题(有关数独的问题),36、37 两道题运用了位运算来节省空间,是个小技巧,运行效率也快
阅读全文 »

相信对字符串的模式匹配问题大家都不陌生,大学数据结构课程介绍了对暴力匹配算法的优化之一————KMP算法,但实际上,这个算法在工程上并不常用,许多文本处理器在搜索功能这一块都采用了主流的BM算法。这篇文章会介绍BF、KMP、BM,还有比较简单的Sunday算法,它们的时间复杂度都比 brute-force search 暴力匹配法效率高
阅读全文 »

LeetCode算法经典题集(二),算法题题号:14、15、17、19、22、23、24、25,包括双指针法、深度优先搜索、回溯法、分治法、二分查找法、递归法等
阅读全文 »

Java流学习笔记(二),包括结果收集、收集于映射表、群组与分区、下游收集器、约简操作、基本类型流、并行流等知识点
阅读全文 »

流提供了一种让我们可以在比集合更高的概念级别上指定计算的数据视图,通过使用流,我们可以说明想要完成什么任务,而不是说明如何去实现它,我们将操作的调度留给具体实现去解决
阅读全文 »

LeetCode算法经典题集(一),算法题题号:3、5、10、11,包括滑动窗口、动态规划、Manacher's Algorithm、双指针法、回溯法等
阅读全文 »

Java线程学习笔记(一),包括了进程与线程的概念、Java实现线程的两种方式、线程状态、线程属性、同步等
阅读全文 »