随笔分类 -  LeetCode

上一页 1 2 3 4 5 6 7 8 9 ··· 11 下一页
摘要:问题 给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。 示例 输入: head = [1,2,3,4,5], k = 2 输出: [4,5,1,2,3] 解答 class Solution { public: ListNode* rotateRight(ListNod 阅读全文
posted @ 2021-03-27 11:46 tmpUser 阅读(54) 评论(0) 推荐(0)
摘要:问题 给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。 示例 输入: amount = 5, coins = [1, 2, 5] 输出: 4 解释: 有四种方式可以凑成总金额: 5=5 5=2+2+1 5=2+1+1+1 5=1+1+1+1+1 阅读全文
posted @ 2021-03-26 12:36 tmpUser 阅读(43) 评论(0) 推荐(0)
摘要:问题 给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。 你可以认为每种硬币的数量是无限的。 示例 输入: coins = [1, 2, 5], amount = 11 输出: 3 解释 阅读全文
posted @ 2021-03-26 11:15 tmpUser 阅读(54) 评论(0) 推荐(0)
摘要:问题 一所学校里有一些班级,每个班级里有一些学生,现在每个班都会进行一场期末考试。给你一个二维数组 classes ,其中 classes[i] = [passi, totali] ,表示你提前知道了第 i 个班级总共有 totali 个学生,其中只有 passi 个学生可以通过考试。 给你一个整数 阅读全文
posted @ 2021-03-15 00:40 tmpUser 阅读(229) 评论(0) 推荐(0)
摘要:问题 给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。 k 是一个正整数,它的值小于或等于链表的长度。 如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 示例 解答 class Solution { public: ListNode* reverseKGroup( 阅读全文
posted @ 2021-03-15 00:31 tmpUser 阅读(46) 评论(0) 推荐(0)
摘要:问题 给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。 求在该柱状图中,能够勾勒出来的矩形的最大面积。 示例 图中阴影部分为所能勾勒出的最大矩形面积,其面积为 10 个单位。 解答1:暴力(中心扩散) class Solution { public: int 阅读全文
posted @ 2021-03-14 16:52 tmpUser 阅读(63) 评论(0) 推荐(0)
摘要:问题 序列化二叉树的一种方法是使用前序遍历。当我们遇到一个非空节点时,我们可以记录下这个节点的值。如果它是一个空节点,我们可以使用一个标记值记录,例如 #。 示例 输入: "9,3,4,#,#,1,#,#,2,#,6,#,#" 输出: true 解答 class Solution { public: 阅读全文
posted @ 2021-03-12 10:18 tmpUser 阅读(38) 评论(0) 推荐(0)
摘要:问题 给定一个非空的整数数组,返回其中出现频率前 k 高的元素。 示例 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 解答 class Solution { public: typedef pair<int, int> P; // 少写点字 struct cmp 阅读全文
posted @ 2021-03-11 15:24 tmpUser 阅读(54) 评论(0) 推荐(0)
摘要:问题 实现一个基本的计算器来计算简单的表达式字符串(带括号的四则运算)。 表达式字符串只包含非负整数,算符 +、-、*、/ ,左括号 ( 和右括号 ) 。整数除法需要 向下截断 。 你可以假定给定的表达式总是有效的。 示例 输入:s = "2*( - 5+5*2)/ 3+(6/2+8)" 输出:14 阅读全文
posted @ 2021-03-11 11:49 tmpUser 阅读(750) 评论(0) 推荐(0)
摘要:问题 给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。 整数除法仅保留整数部分。 示例 输入: s = " 3+5 / 2 " 输出: 5 解答 class Solution { public: int calculate(string s) { vector<int> num 阅读全文
posted @ 2021-03-11 11:41 tmpUser 阅读(59) 评论(0) 推荐(0)
摘要:问题 请完成一个函数,输入一个二叉树,该函数输出它的镜像。 示例 解答1:递归 class Solution { public: TreeNode* mirrorTree(TreeNode* root) { if (!root) return nullptr; // 前序操作 swap(root-> 阅读全文
posted @ 2021-03-10 20:31 tmpUser 阅读(51) 评论(0) 推荐(0)
摘要:问题 输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。要注意大数问题,即输出字符串。 示例 输入: n = 1 输出: [1,2,3,4,5,6,7,8,9] 解答 class Solution { public: st 阅读全文
posted @ 2021-03-10 16:07 tmpUser 阅读(53) 评论(0) 推荐(0)
摘要:问题 实现一个基本的计算器来计算一个简单的字符串表达式 s 的值。 1 ⇐ s.length ⇐ 3 * 105 s 由数字、'+'、'-'、'('、')'、和 ' ' 组成 s 表示一个有效的表达式 示例 输入: s = " 2-1 + 2 " 输出: 3 输入: s = "(1+(4+5+2)- 阅读全文
posted @ 2021-03-10 11:03 tmpUser 阅读(57) 评论(0) 推荐(0)
摘要:问题 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 示例 ** 输入:** s = "We are happy." 输出: "We%20are%20happy." 解答1:额外申请空间 class Solution { public: string replaceSpace(stri 阅读全文
posted @ 2021-03-09 20:51 tmpUser 阅读(46) 评论(0) 推荐(0)
摘要:问题 在一个数组 nums 中除一个数字只出现一次之外,其他数字都出现了三次。请找出那个只出现一次的数字。 示例 输入: nums = [3,4,3,3] 输出: 4 解答1:哈希表 class Solution { public: int singleNumber(vector<int>& num 阅读全文
posted @ 2021-03-09 20:02 tmpUser 阅读(57) 评论(0) 推荐(0)
摘要:问题 给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。 在 S 上反复执行重复项删除操作,直到无法继续删除。 在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。 示例 输入: "abbaca" 输出: "ca" 解释: 例如,在 "abbaca" 中,我 阅读全文
posted @ 2021-03-09 17:52 tmpUser 阅读(68) 评论(0) 推荐(0)
摘要:问题 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是回文。 返回符合要求的 最少分割次数 。 示例 输入: s = "aab" 输出: 1 解释: 只需一次分割就可将 s 分割成 ["aa","b"] 这样两个回文子串。 解答 class Solution { public: int 阅读全文
posted @ 2021-03-09 15:57 tmpUser 阅读(48) 评论(0) 推荐(0)
摘要:问题 给你一个字符串 s,请你将 s 分割成一些子串,使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 输入: s = "aab" 输出: [["a","a","b"],["aa","b"]] 解答 class Solution { publi 阅读全文
posted @ 2021-03-09 13:38 tmpUser 阅读(44) 评论(0) 推荐(0)
摘要:问题 给你一个字符串 s,找到 s 中最长的回文子串。 示例 输入: s = "babad" 输出: "bab" 解释: "aba" 同样是符合题意的答案。 解答1:动态规划 class Solution { public: string longestPalindrome(string s) { 阅读全文
posted @ 2021-03-09 12:27 tmpUser 阅读(59) 评论(0) 推荐(0)
摘要:问题 给定一个由正整数组成且不存在重复数字的数组,找出和为给定目标正整数的组合的个数。 示例 nums = [1, 2, 3] target = 4 所有可能的组合为: (1, 1, 1, 1) (1, 1, 2) (1, 2, 1) (1, 3) (2, 1, 1) (2, 2) (3, 1) 请 阅读全文
posted @ 2021-03-09 10:13 tmpUser 阅读(78) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 ··· 11 下一页