
算法
文章平均质量分 69
FAlienDug
这个作者很懒,什么都没留下…
展开
-
算法通关村——二分查找在寻找数组峰顶中的应用
最高点如果存在,需要满足arr[i - 1] < arr[i] > arr[i + 1]。mid 在递减阶段的时候,满足条件:arr[mid] < arr[mid -1] && arr[mid] > arr[mid +1]mid在顶峰的时候,满足的条件是:arr[mid] > arr[mid -1] && arr[mid] > arr[mid +1]mid在递增阶段的时候,满足条件:arr[mid] > arr[mid -1]&&arr[mid] < arr[mid +1]原创 2023-08-11 08:33:49 · 419 阅读 · 0 评论 -
算法通关村——轻松搞定最大深度问题
二叉树的深度:从根节点到当前节点的最长简单路径边的条数。原创 2023-08-10 09:37:11 · 200 阅读 · 0 评论 -
算法通关村——轻松搞定两树相等问题
判断两棵树是否相同原创 2023-08-09 10:32:14 · 264 阅读 · 0 评论 -
算法通关村——迭代实现二叉树的前中后序遍历
递归就是每次执行方法调用都会先把当前的局部变量、参数值和返回地址等压入栈中,后面在递归返回的时候,从栈顶弹出上一层的各项参数继续执行,这就是递归为什么能够自动返回并执行上一层的方法的原因。因此,我们也可以模拟一个栈,将结果压入栈中,然后再从栈中弹出节点,就这样进行左右子树的遍历。原创 2023-08-08 12:55:18 · 289 阅读 · 0 评论 -
递归在树的深度遍历中的运用
对于树这种数据结构,之前一直使用的是层次遍历,也就是;对于树的遍历,还可以进行。而结合递归,树的深度优先搜索便能够很容易让人记住,面试官往往不会考简单的使用递归实现树的深度遍历,因此,除了使用递归方法外,非递归方式实现树的遍历也需要掌握(下期讲解)。原创 2023-08-08 12:36:46 · 176 阅读 · 0 评论 -
树的层次遍历
广度优先在面试里出现的频率非常高,整体属于简单题。而广度优先遍历又叫做层次遍历,基本过程如下:层次遍历就是从根节点开始,先访问根节点下面一层全部元素,再访问之后的层次,类似金字塔一样,逐层访问。我们可以看到上面例子就是从左到右一层一层遍历二叉树,先访问3,之后访问1的左右孩子9和10,之后分别访问9和20的左右孩子[4,5]和[6,7] ,最后得到结果[3,9,20,8,13,15,7]这里需要关注的问题是:将遍历过的元素的左右孩子保存起来。原创 2023-08-05 13:15:38 · 591 阅读 · 0 评论 -
算法通关村——如何使用中序和后序来恢复一棵二叉树
前中序恢复二叉树和中后序恢复二叉树原创 2023-08-04 11:01:39 · 252 阅读 · 0 评论 -
理解树的结构
树是一个有n个有限节点组成的一个具有层次关系的集合。每个节点有0个或多个子节点,没有父节点的节点称为根节点(一棵树有且只有一个)。树的种类比较多,最常见的就是二叉树了。int val;解释:这里本质上就两个引用,分别指向两个位置,为了便于理解,分别命名为左、右孩子int val;原创 2023-08-04 09:31:03 · 129 阅读 · 0 评论 -
算法通关村第四关——如何基于数组(链表)实现栈
栈的基础和自定义栈原创 2023-08-02 12:19:10 · 251 阅读 · 0 评论 -
算法通关村第三关——不简单的数组增删改查
爱不起的数组原创 2023-07-31 12:53:19 · 244 阅读 · 0 评论 -
算法通关村第二关——单链表加1的问题解析
链表加1原创 2023-07-29 09:47:26 · 422 阅读 · 0 评论 -
算法通关村第二关——两两交换链表中的节点的问题解析
链表节点两两交换位置原创 2023-07-29 09:19:28 · 397 阅读 · 0 评论 -
算法通关村第二关——指定区间反转的问题解析
头插法实现链表区间反转原创 2023-07-28 10:34:55 · 238 阅读 · 0 评论 -
算法通关村第二关——我终于学会链表反转了
链表反转方式原创 2023-07-28 07:59:43 · 80 阅读 · 0 评论 -
算法通关村第一关——链表经典问题之双指针专题笔记
双指针专题原创 2023-07-26 12:30:09 · 131 阅读 · 0 评论 -
算法通关村第一关——链表经典问题之合并有序链表
链表经典问题之合并两个有序链表原创 2023-07-26 09:48:50 · 209 阅读 · 0 评论 -
算法通关村第一关——链表经典问题之回文序列笔记
判断链表是否是回文序列原创 2023-07-26 09:05:15 · 219 阅读 · 0 评论 -
算法通关村第一关——链表经典问题之两个链表第一个公共子节点笔记
寻找两个链表第一个公共子节点原创 2023-07-17 13:43:15 · 237 阅读 · 0 评论 -
算法通过村第一关——链表青铜挑战笔记
在Java中,单链表是由一个个Node节点连接起来的。Node节点是一个类,类中存放了数据属性(data)和下一个节点属性(Node),通常还会有对这两个属性的初始化的构造方法(主要是针对数据属性的初始化),当然,为了保证数据的安全性,会采用面向对象的封装性对属性使用private权限修饰,对外提供公有的get和set方法对这两个属性进行访问(如果只是测试,不考虑安全性的话,也可以将这两个属性设置为公有的,在外部直接对属性进行操作)。当遍历完所有元素后,所有的节点便形成了一个单链表。以下是节点的代码构造。原创 2023-07-16 17:08:12 · 567 阅读 · 3 评论 -
IP地址和整数之间的转换
IP地址和整数间的转换原创 2023-06-30 10:29:56 · 5382 阅读 · 0 评论 -
NC61 两数之和问题
牛客的两数之和的个人解析原创 2023-06-28 20:54:21 · 581 阅读 · 3 评论