前言 对于绝大多少程序员来说,数据结构与算法绝对是一门非常重要但又非常难以掌握的学科。最近自己系统学习了一套数据结构与算法的课程,也开始到Leetcode上刷题了。这里对课程中讲到的一些数据结构与算法基础做了一些回顾和总结,从宏观上先来了解整个知识框架。 数据结构与算法 ...
最近重新学习数据结构与算法以及刷leetcode算法题时,发现不少jdk自带的方法可以提升刷题的效率。这些小技巧不仅仅对刷算法题带来便利,对我们平时开发也是很有帮助的。本文以java语言为基础,记录了目前已经使用或看到过的一些小技巧,后续在刷题过程中,还会持续更新。 一 数组 使用Arrays.sort int a 进行排序 底层采用的是快速排序算法实现的:时间复杂度为O nlogn ,空间复杂 ...
2021-02-07 12:43 0 349 推荐指数:
前言 对于绝大多少程序员来说,数据结构与算法绝对是一门非常重要但又非常难以掌握的学科。最近自己系统学习了一套数据结构与算法的课程,也开始到Leetcode上刷题了。这里对课程中讲到的一些数据结构与算法基础做了一些回顾和总结,从宏观上先来了解整个知识框架。 数据结构与算法 ...
异或、与的一点总结(这些位运算真的是骚操作2333) 两个相同的数字:a^a=0 取出一个数最右端为1的那一位:a &=-a 其中 ...
...
经典算法题每日演练——第二十五题 块状链表 经典算法题每日演练——第二十四题 梳排序 经典算法题每日演练——第二十三题 鸡尾酒排序 经典算法题每日演练——第二十二题 奇偶排序 ...
KMP算法 关于字符串匹配的算法,最知名的莫过于KMP算法了,尽管我们日常搬砖几乎不可能去亲手实现一个KMP算法,但作为一种算法学习的锻炼也是很好的,所以记录一下。 KMP算法是根据三位作者(D.E.Knuth, J.H.Morris和V.R.Pratt)的名字来命名的,算法的全称 ...
这是好久之前的一篇文章「学习数据结构和算法的框架思维」的修订版。之前那篇文章收到广泛好评,没看过也没关系,这篇文章会涵盖之前的所有内容,并且会举很多代码的实例,教你如何使用框架思维。 首先,这里讲的都是普通的数据结构,咱不是搞算法竞赛的,野路子出生,我只会解决常规的问题。另外,以下是我个人的经验 ...
建议:在刷题之前先对常用数据结构和算法有一定了解 推荐书籍:《算法设计与分析》王红梅、《数据结构》严蔚敏 对应链接: https://item.jd.com/10031506962607.html https://item.jd.com/12320030.html ...
前置问题 经典问题与算法 8皇后问题(92种摆法)——回溯算法 字符串匹配问题——KMP算法(取代暴力匹配) 汉诺塔游戏问题——分治算法 马踏棋盘算法也称骑士周游问题——图的深度优化遍历算法(DFS)+贪心算法优化 Josephu——约瑟夫问题 ...