![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode每日一题
文章平均质量分 57
liqiao96
西安交通大学软件工程研究生,分享自己的学习过程的知识总结。欢迎关注呀,哈哈哈。
展开
-
LeetCode 150. 逆波兰表达式求值
LeetCode 150. 逆波兰表达式求值题目描述解题思路代码块题目描述根据 逆波兰表示法,求表达式的值。有效的算符包括 +、-、*、/ 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。示例 1:输入:tokens = [“2”,“1”,"+",“3”,"*"]输出:9解释:该算式转化为常见的中缀算术表达式为:((2 + 1) * 3) = 9示例 2:输入:原创 2021-03-21 13:48:00 · 85 阅读 · 0 评论 -
LeetCode 104. 二叉树的最大深度
LeetCode 104. 二叉树的最大深度题目描述解题思路代码块题目描述给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7],3/ \9 20/ \15 7返回它的最大深度 3 。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-depth-of-binary-原创 2021-03-05 21:57:51 · 97 阅读 · 0 评论 -
LeetCode 232. 用栈实现队列
LeetCode 232. 用栈实现队列题目描述解题思路代码块题目描述请你仅使用两个栈实现先入先出队列。队列应当支持一般队列的支持的所有操作(push、pop、peek、empty):实现 MyQueue 类:void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空,返回 true ;否则,返回 false说明:你只能使用标准的栈操作 —— 也就是只有 pu原创 2021-03-05 10:56:07 · 107 阅读 · 1 评论 -
LeetCode 53. 最大子序和
LeetCode 53. 最大子序和题目描述解题思路代码块题目描述给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例 2:输入:nums = [1]输出:1示例 3:输入:nums = [0]输出:0示例 4:输入:nums = [-1]输出:-1示例 5:输入:nums =原创 2021-03-05 09:42:01 · 81 阅读 · 1 评论 -
LeetCode 21. 合并两个有序链表
LeetCode 21. 合并两个有序链表题目描述解题思路代码块题目描述合并两个有序链表将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例 1:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2:输入:l1 = [], l2 = []输出:[]示例 3:输入:l1 = [], l2 = [0]输出:[0]提示:两个链表的节点数目范围是 [0, 50]-100 <= Nod原创 2021-03-03 23:22:17 · 107 阅读 · 1 评论 -
LeetCode 206 反转链表
LeetCode 206 反转链表反转一个单链表。解题思路代码块反转一个单链表。反转链表反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?解题思路见代码块代码块/** * Definition for singly-linked list. * public class ListNode {原创 2021-03-03 22:49:23 · 86 阅读 · 1 评论 -
LeetCode 3 无重复字符的最长子串
LeetCode 3 无重复字符的最长子串题目描述解题思路代码块题目描述给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: s = “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: s = “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: s = “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为原创 2021-03-03 21:54:03 · 79 阅读 · 1 评论 -
Leetcode 5. 最长回文子串
Leetcode 5. 最长回文子串题目描述解题思路代码块题目描述给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”示例 3:输入:s = “a”输出:“a”示例 4:输入:s = “ac”输出:“a”提示:1 <= s.length <= 1000s 仅由数字和英文字母(大写和/或小写)组成来源:力扣(LeetCod原创 2021-03-03 21:02:10 · 84 阅读 · 1 评论 -
LeetCode 304. 二维区域和检索 - 矩阵不可变
LeetCode 304. 二维区域和检索 - 矩阵不可变题目描述解题思路代码块题目描述给定一个二维矩阵,计算其子矩形范围内元素的总和,该子矩阵的左上角为 (row1, col1) ,右下角为 (row2, col2) 。上图子矩阵左上角 (row1, col1) = (2, 1) ,右下角(row2, col2) = (4, 3),该子矩形内元素的总和为 8。示例:给定 matrix = [[3, 0, 1, 4, 2],[5, 6, 3, 2, 1],[1, 2, 0, 1, 5],[原创 2021-03-02 22:56:50 · 61 阅读 · 0 评论 -
LeetCode480. 滑动窗口中位数
LeetCode480. 滑动窗口中位数题目描述解题思路代码块题目描述中位数是有序序列最中间的那个数。如果序列的长度是偶数,则没有最中间的数;此时中位数是最中间的两个数的平均数。例如:[2,3,4],中位数是 3[2,3],中位数是 (2 + 3) / 2 = 2.5给你一个数组 nums,有一个长度为 k 的窗口从最左端滑动到最右端。窗口中有 k 个数,每次窗口向右移动 1 位。你的任务是找出每次窗口移动后得到的新窗口中元素的中位数,并输出由它们组成的数组。示例:给出 nums = [1,原创 2021-02-04 23:16:54 · 86 阅读 · 0 评论 -
LeetCode1319 连通网络的操作次数
LeetCode1319 连通网络的操作次数题目描述解题思路代码块题目描述用以太网线缆将 n 台计算机连接成一个网络,计算机的编号从 0 到 n-1。线缆用 connections 表示,其中 connections[i] = [a, b] 连接了计算机 a 和 b。网络中的任何一台计算机都可以通过网络直接或者间接访问同一个网络中其他任意一台计算机。给你这个计算机网络的初始布线 connections,你可以拔开任意两台直连计算机之间的线缆,并用它连接一对未直连的计算机。请你计算并返回使所有计算机都原创 2021-01-23 16:12:20 · 142 阅读 · 1 评论 -
LeetCode989. 数组形式的整数加法
LeetCode989. 数组形式的整数加法题目描述解题思路代码块题目描述对于非负整数 X 而言,X 的数组形式是每位数字按从左到右的顺序形成的数组。例如,如果 X = 1231,那么其数组形式为 [1,2,3,1]。给定非负整数 X 的数组形式 A,返回整数 X+K 的数组形式。示例 1:输入:A = [1,2,0,0], K = 34输出:[1,2,3,4]解释:1200 + 34 = 1234示例 2:输入:A = [2,7,4], K = 181输出:[4,5,5]解释:274原创 2021-01-22 22:17:20 · 65 阅读 · 0 评论 -
LeetCode830 较大分组的位置
LeetCode830 较大分组的位置题目描述解题思路代码题目描述在一个由小写字母构成的字符串 s 中,包含由一些连续的相同字符所构成的分组。例如,在字符串 s = “abbxxxxzyy” 中,就含有 “a”, “bb”, “xxxx”, “z” 和 “yy” 这样的一些分组。分组可以用区间 [start, end] 表示,其中 start 和 end 分别表示该分组的起始和终止位置的下标。上例中的 “xxxx” 分组用区间表示为 [3,6] 。我们称所有包含大于或等于三个连续字符的分组为 较大原创 2021-01-05 16:22:24 · 64 阅读 · 0 评论 -
LeetCode 86. 分隔链表
LeetCode 86. 分隔链表题目描述解题思路代码题目描述给你一个链表和一个特定值 x ,请你对链表进行分隔,使得所有小于 x 的节点都出现在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例:输入: head = 1->4->3->2->5->2, x = 3输出: 1->2->2->4->3->5题目链接: link.解题思路此处我们从链表头开始遍历,如果当前节点的值小于x我们就将x节点拿出来接到原创 2021-01-03 21:26:07 · 57 阅读 · 0 评论 -
LeetCode 239. 滑动窗口最大值
LeetCode 239. 滑动窗口最大值题目描述解题思路代码题目描述给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7]解释:滑动窗口的位置 最大值[1 3 -1] -3 5 3 6 7 3原创 2021-01-02 23:03:01 · 173 阅读 · 0 评论