Afauria
Afauria
全部文章
分类
未归档(1)
题解(49)
归档
标签
去牛客网
登录
/
注册
刷题路漫漫
题解
全部文章
(共50篇)
题解 | #用两个栈实现队列#
描述 用两个栈来实现一个队列,使用n个元素来完成 n 次在队列尾部插入整数(push)和n次在队列头部删除整数(pop)的功能。 队列中的元素为int类型。保证操作合法,即保证pop操作时队列内已有元素。 思路 push到栈1中,pop的时候从栈2获取,如果为空则将栈1中的元素全部添加到栈2中 pu...
Java
2022-04-05
0
321
题解 | #反转链表#
描述 反转链表 思路1:使用栈存储 使用栈存储每个节点,再pop取出节点,构造新链表。(也可以用列表,倒序取出,i--) public class Solution { public ListNode ReverseList(ListNode head) { if(head ...
Java
2022-04-05
0
356
题解 | #删除链表中重复的结点#
描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表 1->2->3->3->4->4->5 处理后为 1->2->5 注: 首节点是重复节点的情况 3, 3, 4, 5, 5,注意中...
Java
2022-04-05
0
434
题解 | #复杂链表的复制#
描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。(注意:新链表不能指向原链表节点)。 下图是一个含有5个结点的复杂链表。图中实线箭头表示next指针,虚线箭头表示random指针。...
Java
2022-04-05
0
333
题解 | #链表中倒数最后k个结点#
描述 输入一个长度为 n 的链表,设链表中的元素的值为 ai ,返回该链表中倒数第k个节点。 如果该链表长度小于k,请返回一个长度为 0 的链表。 要求:空间复杂度 O(n),时间复杂度 O(n) 进阶:空间复杂度 O(1),时间复杂度 O(n) 类似题目:删除链表的倒数第n个节点 思路1:列表...
Java
双指针
链表
递归
2022-04-05
0
357
题解 | #链表中环的入口结点#
描述 给一个长度为n链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。 数据范围: n <= 10000,1<= 结点值 <= 10000 要求:空间复杂度 O(1),时间复杂度 O(n) 思路1:集合Set 使用集合存储,再次遍历判断是否存在重复节点(不满足空...
Java
双指针
链表
2022-04-04
1
516
题解 | #两个链表的第一个公共结点#
描述 输入两个无环的单向链表,找出它们的第一个公共结点,如果没有公共节点则返回空。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的) 数据范围:n<=1000 要求:空间复杂度 O(1),时间复杂度 O(n) 思路1:统计两个链表长度 先分别统计两个链...
Java
2022-04-04
0
387
题解 | #合并两个排序的链表#
描述 输入两个递增的链表,单个链表的长度为n,合并这两个链表并使新链表中的节点仍然是递增排序的。 数据范围: 0 <= n <= 1000, -1000 <= 节点值 < = 1000 要求:空间复杂度 O(1)O(1),时间复杂度 O(n)O(n) 如输入{1,3,5},{...
Java
2022-04-04
0
397
题解 | #从尾到头打印链表#
描述 输入一个链表的头节点,按链表从尾到头的顺序返回每个节点的值(用数组返回)。 0 <= 链表长度 <= 10000 思路1:使用列表,倒序取出 遍历存到列表中,再倒序取出 public class Solution { public ArrayList<Integer&...
Java
2022-04-04
0
308
题解 | #删除链表的节点#
描述 给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。返回删除后的链表的头节点。 此题对比原题有改动 题目保证链表中节点的值互不相同 该题只会输出返回的链表和结果做对比,所以若使用 C 或 C++ 语言,你不需要 free 或 delete 被删除的节点 数据范围: 0&l...
Java
链表
双指针
2022-04-04
0
311
首页
上一页
1
2
3
4
5
下一页
末页