
笔试面试突破
文章平均质量分 73
笔试面试突破
NickDeCodes
这个作者很懒,什么都没留下…
展开
-
笔试-深搜、广搜算法突破
提到深搜、广搜,大家一般就会说深搜用栈或递归,广搜用队列。但是其实我认为应该先考虑一下,是搜的对象是什么,是树、还是图当然无论是图的深搜、还是树的深搜,其基本理念都是一致的。原创 2024-06-06 12:45:09 · 382 阅读 · 0 评论 -
笔试-动态规划算法突破
在理解了01背包和完全背包后,记住动态规划五部曲,遇到需要使用动态规划解决的问题时,就是思考如何转化到相应的问题上,去书写代码了。原创 2024-04-19 17:13:55 · 618 阅读 · 0 评论 -
笔试-回溯算法突破
组合问题:元素不重复取,backtracking(…, i + 1)切割问题:元素不重复取,backtracking(…, i + 1)子集问题:元素不重复取,backtracking(…, i + 1)排列问题:元素判重, 需要使用used数组标记棋盘问题:二维矩阵回溯。原创 2024-04-19 16:38:36 · 905 阅读 · 0 评论 -
面试-递归与迭代的区别与联系
递归和迭代是解决问题的两种基本方法,它们在许多情况下可以互换使用,但各自具有独特的特点和适用场景。理解它们之间的区别和联系对于选择合适的解决方案非常重要。原创 2024-04-19 15:34:58 · 479 阅读 · 0 评论 -
笔试-递归算法突破
递归通常用于解决可以被分解为多个子问题的问题,其中每个子问题与原问题具有相同的形式。递归算法的关键在于定义递归结束的条件,即基准情况(base case),以防止无限递归和栈溢出。写完了递归算法, 运行的时候,经常会遇到栈溢出的错误,就是没写终止条件或者终止条件写的不对,操作系统也是用一个栈的结构来保存每一层递归的信息,如果递归没有终止,操作系统的内存栈必然就会溢出。确定哪些参数是递归的过程中需要处理的,那么就在递归函数里加上这个参数, 并且还要明确每次递归的返回值是什么进而确定递归函数的返回类型。原创 2024-04-19 15:29:30 · 271 阅读 · 0 评论 -
笔试-双指针算法突破
双指针技术是一种常用的算法技术,用于解决数组或链表中的问题,通常能以较低的时间复杂度解决问题。双指针可以被分为几种类型,包括等。这里,我将解释这些类型并提供一些示例问题及其解决方案。原创 2024-04-19 15:15:36 · 197 阅读 · 0 评论 -
笔试-二分算法突破
二分基础选区间 二分边界看左右,看谁不等谁,等右得减一 二分贪心须检查原创 2024-04-19 14:57:04 · 422 阅读 · 0 评论