摘要: 剑指 Offer 35. 复杂链表的复制 请实现 copyRandomList 函数,复制一个复杂链表。在复杂链表中,每个节点除了有一个 next 指针指向下一个节点,还有一个 random 指针指向链表中的任意节点或者 null。 示例 1: 输入:head = [[7,null],[13,0], 阅读全文
posted @ 2020-09-28 19:49 Lucky小黄人^_^ 阅读(152) 评论(0) 推荐(0)
摘要: 剑指 Offer 09. 用两个栈实现队列 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 示例 1: 输入: ["CQue 阅读全文
posted @ 2020-09-28 18:07 Lucky小黄人^_^ 阅读(171) 评论(0) 推荐(0)
摘要: 剑指 Offer 54. 二叉搜索树的第k大节点 给定一棵二叉搜索树,请找出其中第k大的节点。 示例 1: 示例 2: 限制: 1 ≤ k ≤ 二叉搜索树元素个数 解法一: 按右根左的顺序递归遍历二叉搜索树,第k个结点,即使第k大的结点 1 class Solution { 2 public int 阅读全文
posted @ 2020-09-28 15:22 Lucky小黄人^_^ 阅读(238) 评论(0) 推荐(0)
摘要: 06. 从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 示例 1: 输入:head = [1,3,2] 输出:[2,3,1] 限制: 0 <= 链表长度 <= 10000 解法一: 借用递归,递归时记录节点个数和当前结点的位置,递归到尾节点后创建数组,获取链表 阅读全文
posted @ 2020-09-28 11:33 Lucky小黄人^_^ 阅读(168) 评论(0) 推荐(0)