堆栈哲学
堆栈哲学
全部文章
分类
HankerRank(1)
leetcode(8)
Luogu刷题入门篇(5)
学习笔记(8)
教程库(2)
题解(25)
归档
标签
去牛客网
登录
/
注册
堆栈哲学的博客
coderAndWAer
TA的专栏
30篇文章
21人订阅
小白专属-牛客题解
30篇文章
30836人学习
全部文章
(共12篇)
题解 | 调整数组顺序使奇数位于偶数前面
来自专栏
解法一:插入排序思想 记录已经是奇数的位置下标(视作为有序区域),然后向后遍历,一经发现是奇数则进行“插入排序”,然后有序区下标加1。 Java参考代码: import java.util.*; public class Solution { /** * 代码中的类名、方法名、...
Java
数组
图解
双指针
2021-07-15
13
1549
题解 | 用两个栈实现队列
来自专栏
解法一:队列模拟 栈是后进先出,队列是先进先出,想要用栈实现队列,需要把一个栈中的元素挨个pop()出来,再push到另一个栈中。 上图中,我们将栈a中的数据全部pop()出来,再放入栈b中,经过这么一番操作后,栈b中的元素顺序就变成先进先出的顺序了,所以栈b中的顺序跟队列顺序一样了。解法一、解...
Java
队列
栈
模拟
图解
2021-07-15
9
2260
题解 |数字在升序数组中出现的次数
来自专栏
解法一:暴力 在一个数组中寻早某个元素或者统计其出现的次数 显而易见的方法是暴力解法 循环枚举数组元素,如果有找到目标值K,加入计数器 返回计数器数值即可 Java参考代码: public class Solution { public int GetNumberOfK(int [] a...
Java
二分查找
图解
数组
暴力
2021-07-15
0
1202
题解 | 找到搜索二叉树中两个错误的节点
来自专栏
题意分析: 在做这道题之前,最好是先了解什么是搜索二叉树(BST) 左子树的值小于根节点 右子树的值大于根节点 子树同样满足上述规则 BST: 可以参考图解示例: 解法一:递归 因为二叉搜索树的中序遍历是正序数组,所以直接进行中序遍历,遍历的过程中直接找出异常值分析结果可得。 ...
Java
二叉树
搜索二叉树
图解
递归
数组
2021-07-14
5
1965
题解 | 最长公共前缀
来自专栏
解法一:纵向扫描 将字符串数组看作一个二维空间,每一次从第一列开始。 确定所有字符子串中第一列字符。 逐层扫描后面每一列,遇到不同字符停止扫描。 图解: Java参考代码: import java.util.*; public class Solution { /** ...
Java
图解
数组
字符串
2021-07-14
40
4503
题解 | 数组中相加和为0的三元组
来自专栏
解法一:双指针 对数组长度进行特判 排序 num[i]>0说明后面的三数和不可能等于0。 对于重复元素跳过 左指针left=i+1,右指针right = len-1 当nums[i]+nums[left]+nums[right]==0执行循环,判断左界和右界是否和下一位置重复,去除重复解...
Java
数组
图解
哈希表
双指针
2021-07-14
10
2676
题解 | 加起来和为目标值的组合
来自专栏
解法一:回溯 思路步骤: 涉及到搜索所有可能的组合类型时,一般情况下都会想到用回溯法。题目中结果集不能重复,这是一个应该注意的点。 开两个数组rseult,path存储结果与可能的路径集。 处理递归终止情况:sum+=num[i]>target时,终止循环(sum为组合数和) 利用一个n...
图解
数组
递归
回溯剪枝
C++
2021-07-13
2
1212
题解 | 实现二叉树先序,中序和后序遍历
来自专栏
题意分析: 数据结构基础知识,考察二叉树的三序遍历。 二叉树的三序遍历时基础,不了解或者已经忘记的玩家可以看一下图解二叉树的三序遍历 图解: 解法一:递归 前序遍历: 访问顺序:根节点——>左子树——>右子树的方式遍历这棵树 而在访问左子树或者右子树的时候,我们按照同样的方式...
Java
递归
二叉树
栈
迭代
图解
2021-07-12
13
2500
题解 | 在旋转过的有序数组中寻找目标值
来自专栏
解法一:暴力 (修正)之前的分析有些错误的地方,没有考虑数组旋转的带来的影响(具体已经在解法二中修正了)。大意的理解为就是给你一个数组和target(目标值),让寻找与目标值相同的元素并返回对应索引,如果不存在就返回-1;比较典型的二分题目。其实题目中对数组的旋转还是有些坑!!! 此类问题,首先想...
暴力
数组
二分查找
图解
Java
2021-07-12
4
1035
题解 | 划分链表
来自专栏
题意分析: 一个原始链表,一个整数x,对该链表进行如下规则的操作。 以x为分界,将链表划分为两部分。val<x和val>=x 两个部分之内的节点之间要保持的原始相对顺序 解法一:模拟(推荐) 思路步骤: 由于要将链表按照规则分割为两部分,可以考虑维护两个链表small和large...
Java
双指针
链表
图解
模拟
2021-07-11
5
963
首页
上一页
1
2
下一页
末页