随笔分类 -  LeetCode—数据结构

摘要:LeetCode 404 左叶子之和 问题描述: 计算给定二叉树的所有左叶子之和。 执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户 内存消耗:36.7 MB, 在所有 Java 提交中击败了84.78%的用户 递归 class Solution { public int s 阅读全文
posted @ 2020-09-19 17:05 CodeSPA 阅读(68) 评论(0) 推荐(0)
摘要:LeetCode 105 从前序与中序遍历序列构造二叉树 问题描述: 根据一棵树的前序遍历与中序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。 例如,给出 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9,3,15,20,7] 返回如下的二叉树 阅读全文
posted @ 2020-09-16 18:41 CodeSPA 阅读(192) 评论(0) 推荐(0)
摘要:LeetCode 328 奇偶链表 问题描述: 给定一个单链表,把所有的奇数节点和偶数节点分别排在一起。请注意,这里的奇数节点和偶数节点指的是节点编号的奇偶性,而不是节点的值的奇偶性。 请尝试使用原地算法完成。你的算法的空间复杂度应为 O(1),时间复杂度应为 O(nodes),nodes 为节点总 阅读全文
posted @ 2020-09-16 10:34 CodeSPA 阅读(98) 评论(0) 推荐(0)
摘要:LeetCode 226 翻转二叉树 问题描述: 翻转一棵二叉树。 执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户 内存消耗:36.6 MB, 在所有 Java 提交中击败了16.33%的用户 递归 将当前根节点下两棵子树交换位置 将两棵子树进行翻转 class Solut 阅读全文
posted @ 2020-09-16 09:07 CodeSPA 阅读(76) 评论(0) 推荐(0)
摘要:LeetCode 73 删除有序链表中的重复元素 问题描述: 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 执行用时:1 ms, 在所有 Java 提交中击败了74.13%的用户 内存消耗:39.5 MB, 在所有 Java 提交中击败了46.17%的用户 class Soluti 阅读全文
posted @ 2020-09-08 09:18 CodeSPA 阅读(191) 评论(0) 推荐(0)
摘要:LeetCode 24 反转链表 问题描述: 定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户 内存消耗:40.2 MB, 在所有 Java 提交中击败了5.06%的用户 class Solution 阅读全文
posted @ 2020-09-08 09:06 CodeSPA 阅读(163) 评论(0) 推荐(0)
摘要:LeetCode 225 用队列实现栈 问题描述: 使用队列实现栈的下列操作: push(x) -- 元素 x 入栈 pop() -- 移除栈顶元素 top() -- 获取栈顶元素 empty() -- 返回栈是否为空 执行用时:0 ms, 在所有 Java 提交中击败了100.00%的用户 内存消 阅读全文
posted @ 2020-08-26 19:19 CodeSPA 阅读(115) 评论(0) 推荐(0)
摘要:Leetcode 232 用栈实现队列 题目描述: 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部。 pop() -- 从队列首部移除元素。 peek() -- 返回队列首部的元素。 empty() -- 返回队列是否为空。 辅助栈/双栈 输入栈(负责接收输入add()) 阅读全文
posted @ 2020-08-26 18:39 CodeSPA 阅读(98) 评论(0) 推荐(0)
摘要:Leetcode 116 填充每个节点的下一个右侧节点 将一个完美二叉树中每一个节点中的next指针指向同层右侧相邻节点,没有则指向null 方法1: 层序遍历(O(N)时间复杂度,O(N)空间复杂度) 执行用时:4 ms, 在所有 Java 提交中击败了20.62%的用户 内存消耗:40.2 MB 阅读全文
posted @ 2020-08-09 21:30 CodeSPA 阅读(168) 评论(0) 推荐(0)