Lxnxn
Lxnxn
全部文章
分类
题解(9)
归档
标签
去牛客网
登录
/
注册
Lxnxn的博客
全部文章
(共9篇)
题解 | #用两个栈实现队列#
思路 入队:入栈(栈1) 出队:将入栈的元素一次出栈到栈2,再pop栈2的首元素 步骤 入队:直接入栈 出队:判断栈2(删除栈)元素是否为空,若为空,判断栈1元素是否为空,不为空,则将栈1的元素出栈到站2,再将栈2的首元素出栈即可 import java.util.Stack; public ...
Java
栈
2022-03-11
0
221
题解 | #合并两个排序的链表#
思路 将递归结果挂在val较小的节点后面 步骤 递归的终止判断:其中一条链表为空 比较得出val值较小的节点,并保存下来little val值较小的链表继续往后走,并将递归结果挂在little后面 返回little /* public class ListNode { int val; ...
Java
递归
链表
2022-03-11
0
206
题解 | #两数之和#
思路 创建map,键为元素,值为下标 步骤 创建HashMap,new HashMap<Integer,Integer>(),第一个Integer代表元素,第二个Integer代表下标 循环整个数组 判断语句,如果map中存在与当前元素相加为target的元素,直接返回数组 否则,将...
Java
数组
哈希表
2022-03-11
0
194
题解 | #排序#
思路 快速选择排序 步骤 选择基准值pivot,默认为待排序列的最左值 从右往左循环查找,找出小于基准值pivot的元素,下标为j 从左往右循环查找,找出大于基准值皮草他的元素,下标为i 交换i和j;继续循环,直到i和j相遇 用下标为i的元素代替最左值 用基准值代替下标为i的元素 此时基准值...
Java
数组
递归
快速选择
2022-03-11
0
230
题解 | #反转链表#
思路 借用新链表,依次将节点挂在新链表的表头 步骤 创建新链表newList while(链表不为空) 记录当前节点的下一节点为tmp 将新链表newList挂在当前节点后 修改新链表的头结点为当前节点 修改原链表的头结点为tmp /* public class ListNode { ...
Java
链表
2022-03-11
0
160
题解 | #平衡二叉树#
思路: 递归判断树的左右子树深度是否满足平衡,只要存在一个地方不满足,则返回-1。 public class Solution { public boolean IsBalanced_Solution(TreeNode root) { if(root==null)return...
Java
2021-10-15
0
265
题解 | #两个链表的第一个公共结点#
思路:假设两个链表有环,那么双指针,一个从l1(头)遍历,一个从l2(尾)遍历,最终一定会存在一个相同的节点,返回即可;若遍历结束仍然没有,则说明没有公共节点,返回null /* public class ListNode { int val; ListNode next = nul...
Java
链表
2021-10-15
0
283
题解 | #排序#
希尔排序 import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 将给定数组排序 * @param arr int整型一维数组 待排序的...
Java
2021-10-14
0
313
题解 | #反转链表#
只有两步!第一步:创建一个空的链表newHead第二步:循环挂载链表:1.保存下一节点,防止链表截断 2.将当前节点的指针指向新链表newHead 3.更新新链表的指针,此时新链表指向当前节点 4.继续下一个节点:将head指针指向1中保存的下一节点 public class Solution { ...
2021-08-07
0
295