堆栈哲学
堆栈哲学
全部文章
分类
HankerRank(1)
leetcode(8)
Luogu刷题入门篇(5)
学习笔记(8)
教程库(2)
题解(25)
归档
标签
去牛客网
登录
/
注册
堆栈哲学的博客
coderAndWAer
TA的专栏
30篇文章
21人订阅
小白专属-牛客题解
30篇文章
30838人学习
全部文章
(共24篇)
题解 | 实现二叉树先序,中序和后序遍历
来自专栏
题意分析: 数据结构基础知识,考察二叉树的三序遍历。 二叉树的三序遍历时基础,不了解或者已经忘记的玩家可以看一下图解二叉树的三序遍历 图解: 解法一:递归 前序遍历: 访问顺序:根节点——>左子树——>右子树的方式遍历这棵树 而在访问左子树或者右子树的时候,我们按照同样的方式...
Java
递归
二叉树
栈
迭代
图解
2021-07-12
13
2500
题解 | 在旋转过的有序数组中寻找目标值
来自专栏
解法一:暴力 (修正)之前的分析有些错误的地方,没有考虑数组旋转的带来的影响(具体已经在解法二中修正了)。大意的理解为就是给你一个数组和target(目标值),让寻找与目标值相同的元素并返回对应索引,如果不存在就返回-1;比较典型的二分题目。其实题目中对数组的旋转还是有些坑!!! 此类问题,首先想...
暴力
数组
二分查找
图解
Java
2021-07-12
4
1036
题解 | 划分链表
来自专栏
题意分析: 一个原始链表,一个整数x,对该链表进行如下规则的操作。 以x为分界,将链表划分为两部分。val<x和val>=x 两个部分之内的节点之间要保持的原始相对顺序 解法一:模拟(推荐) 思路步骤: 由于要将链表按照规则分割为两部分,可以考虑维护两个链表small和large...
Java
双指针
链表
图解
模拟
2021-07-11
5
963
题解 | 合并两个有序的数组
来自专栏
解法一:合并后排序 思路步骤: 对原数组A,B进行合并 将合并后的数组A进行排序 java参考代码: import java.util.*; public class Solution { public void merge(int A[], int m, int B[], int n) ...
Java
数组
双指针
图解
2021-07-11
6
1955
题解 | 链表内指定区间反转
来自专栏
解法一:双指针(两次遍历) 思路步骤: 要反转局部链表,可以将该局部部分当作完整链表进行反转 再将已经反转好的局部链表与其他节点建立连接,重构链表 建议使用虚拟头节点的技巧,可以避免对头节点复杂的分类考虑,简化操作。 反转前后图示: 配图说明: 反转步骤: Java参考代码: ...
Java
双指针
递归
链表
链表反转
图解
2021-07-11
258
30838
题解 | 数字字符串转化成IP地址
来自专栏
题意分析 可以返回任何顺序的答案 IP地址不能包含前导0且仅由'.'分割 由于我们需要找出所有可能复原出的 IP 地址,因此可以考虑使用回溯的方法,对所有可能的字符串分隔方式进行搜索,并筛选出满足要求的作为答案。 也可以暴力,也许能AC。(但是...可以作为一种思路吧) 解法一:回溯+剪枝 思路...
Java
递归
回溯剪枝
暴力
2021-07-10
12
2692
题解 | 子数组的最大累加和问题
来自专栏
题意分析 理解什么是子数组? 要求子数组最大累加和 注意题目对时间复杂度和空间复杂度的要求 时间:O(N) 空间:O(1) 注意备注信息:包含了所给数据的边界范围,这对算法的选择至关重要的。 解法一:暴力解 思路步骤: 常规思路,直接两层for循环暴力枚举 找到符合题意的最大累加和 虽然理...
Java
暴力
贪心算法
递归
分治
2021-07-09
14
1120
题解 | 二叉树根节点到叶子节点和为指定值的路径
来自专栏
分析 注意到本题的要求是,找到所有满足从(根节点)到某个(叶子节)经过的路径上的节点之和等于目标和的路径。核心思想是对树进行一次遍历,在遍历时记录从根节点到当前节点的路径和,以防止重复计算. 解法一:深度优先搜索(DFS) 思路步骤: 该递归一共分为两层 第一层:pathSum(TreeNode...
Java
DFS
BFS
二叉树
C++
2021-07-09
1
1389
题解 | 买卖股票的最好时机
来自专栏
分析 求买股票的最佳时期,应该注意的细节: 卖出股票之前必须先买入 卖出的价格>买入时候的价格(得考虑利润) 给一个数组模拟股票,换句话说,就是查找数组中某两个元素差值的最大。 如果无利可图,请return 0 解法一:暴力(常规大循环解决) 思路步骤: 最显而易见的解法,当然可能并不是...
Java
贪心算法
暴力
动态规划
2021-07-09
11
2404
题解 | 二叉树的最大路径和
来自专栏
分析 读题: 题目难点在于正确理解题意 一棵二叉树 注意题目对路径的定义:开始和结束结点可以是任意的结点。 路径要求唯一,不能重复 任意给出一棵二叉树的两个结点,路径指的是:分别从这两个结点向上走,找到 最近的公共祖先 结点而形成的路径。只有这样的定义下,路径才是唯一确定的。 考虑如...
Java
二叉树
DFS
递归
动态规划
2021-07-08
3
1721
首页
上一页
1
2
3
下一页
末页