00|Leetcode刷题指南

文章强调了程序员应重视算法学习,提倡通过实践来提升编程技能,如多编码、深思熟虑和持续刷题。推荐使用LeetCode进行练习,每个专题学习后要动手做题,遇到困难时参考解法并自行实现。此外,重点介绍了数组、字符串、链表等数据结构以及二分查找、动态规划等算法,鼓励通过写博客巩固知识。
摘要由CSDN通过智能技术生成

面向读者

程序员面试经常会考算法题,对于重要的算法题需要非常熟悉。同时,可以将算法中的编程思维举一反三应用到工作实践当中。

学习Tips

  • 在学校里,我们习惯的的教学方式是先学理论知识,实践的时候可能会用上,我也是走了一些弯路才意识到,这种传统的学习方式不适合学习编程。编程是一门构建的学问,需要多编码,深思熟虑,专注实践,熟能生巧。
  • 看了不等于会了,每个程序员都需要构建自己的知识库,将自己在实践过程中的思考总结下来,反复迭代和打磨自己的技能。如果不放慢脚步认真思考,往往会花费更多的时间或得到更差的结果。
  • 每一个专项学习完基础知识后,开始做题,先自己想思路,如果十分钟还没有想到思路,看题解,理解后自己在leetcode进行编码。
  • 每一个专项练习结束后,可以以写博客文章的形式输出。思考和总结专项内容,方便日后回顾。
  • 坚持刷题,战胜自己的拖延和懒惰,厚积薄发。正如乔布斯所说:”过程即奖励“。

专项内容

模块简介完成总结
整数基本的数据类型,使用时需要主动考虑边界情况,比如除0、正负数、计算是否会溢出等;对「二进制」的位运算也要非常熟悉链接
数组数组是由相同类型的元素组成的数据集合,占据连续的内存按照顺序存储数据,解题常用的方法为双指针链接
字符串字符串由任意长度的字符组成,也是一种特殊的数组链接
链表在链表中,每个节点包含指向下一个节点的指针,这些指针把节点连接成链状结构,比数组插入和删除的效率更高链接
哈希表速度快!哈希表中插入、删除和查找一个元素都只需要O(1)的时间链接
后入先出的特点,插入和删除的操作都发生在栈顶链接
队列先入先出的特点,和我们日常生活中排队的顺序一致,新元素插入队尾,只能删除对了最前面的元素链接
想象成公司的组织架构,一个CEO下面有若干副总,副总下面若干经理,经理下面若干基层员工;面试时需要重视二叉树,每个节点最多只有两个子节点链接
根据根节点和子节点的关系,堆又分为最大堆和最小堆链接
前缀树又称为字典树,用一个树状结构存储一个字典的所有单词链接
二分查找一种针对排序后数组的查找算法链接
排序将若干数据按照特定的顺序进行排列链接
回溯法在解决问题时的每一步都尝试所有的可能选项,最终找出所有可行的解决方案链接
动态规划面试中的热门话题,题目问的是问题的最优解,或者问题的解的数目链接
图由若干节点及节点之间的边组成链接

刷题记录

日期记录更新
2023.5.17完成每个主题的基础知识学习,Leetcode刷题完成小里程碑:100个
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值