![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
Xiao J.
努力努力再努力!!!
展开
-
LeetCode 678. 有效的括号字符串
传送门:https://leetcode-cn.com/problems/valid-parenthesis-string题目描述:给定一个只包含三种字符的字符串:( ,) 和 *,写一个函数来检验这个字符串是否为有效字符串。有效字符串具有如下规则:1、 任何左括号 ( 必须有相应的右括号 )。2、任何右括号 ) 必须有相应的左括号 ( 。3、左括号 ( 必须在对应的右括号之前 )。4、* 可以被视为单个右括号 ) ,或单个左括号 ( ,或一个空字符串。5、一个空字符串也被视为有效字符串。示原创 2021-04-08 11:49:12 · 164 阅读 · 2 评论 -
LeetCode 670 最大交换 (暴力+贪心、Python)
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-swap问题描述给定一个非负整数,你至多可以交换一次数字中的任意两位。返回你能得到的最大值。示例 1 :输入: 2736输出: 7236解释: 交换数字2和数字7。示例 2 :输入: 9973输出: 9973解释: 不需要交换。注意:给定数字的范围是 [0, 108]方法一:暴力法两重循环,每次交换两个相邻的数,取最大值。T = int(input原创 2021-03-09 09:54:58 · 405 阅读 · 1 评论 -
LeetCode 1470. 重新排列数组
题目:给你一个数组 nums ,数组中有 2n 个元素,按 [x1,x2,…,xn,y1,y2,…,yn] 的格式排列。请你将数组按 [x1,y1,x2,y2,…,xn,yn] 格式重新排列,返回重排后的数组。示例 1:输入:nums = [2,5,1,3,4,7], n = 3输出:[2,3,5,4,1,7] 解释:由于 x1=2, x2=5, x3=1, y1=3, y2=4, y3=7 ,所以答案为 [2,3,5,4,1,7]示例 2:输入:nums = [1,2,3,4,4,3,2,原创 2020-11-24 23:26:39 · 168 阅读 · 0 评论 -
LeetCode 1431. 拥有最多糖果的孩子
题目:给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。对每一个孩子,检查是否存在一种方案,将额外的 extraCandies 个糖果分配给孩子们之后,此孩子有 最多 的糖果。注意,允许有多个孩子同时拥有 最多 的糖果数目。示例 1:输入:candies = [2,3,5,1,3], extraCandies = 3输出:[true,true,true,false,true] 解释:孩子 1 有 2 个糖果,如果他原创 2020-11-24 23:24:14 · 110 阅读 · 0 评论 -
LeetCode 771. 宝石与石头
题目: 给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头。 S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。J 中的字母不重复,J 和 S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。示例 1:输入: J = "aA", S = "aAAbbbb"输出: 3示例 2:输入: J = "z", S = "ZZ"输出: 0class Solution { public int numJewelsInStone原创 2020-11-24 23:21:05 · 86 阅读 · 0 评论 -
LeetCode 1486. 数组异或操作
题目:给你两个整数,n 和 start 。数组 nums 定义为:nums[i] = start + 2*i(下标从 0 开始)且 n == nums.length 。请返回 nums 中所有元素按位异或(XOR)后得到的结果。示例 1:输入:n = 5, start = 0输出:8解释:数组 nums 为 [0, 2, 4, 6, 8],其中 (0 ^ 2 ^ 4 ^ 6 ^ 8) = 8 。 "^" 为按位异或 XOR 运算符。示例 2:输入:n = 4, start =原创 2020-11-24 23:18:54 · 98 阅读 · 0 评论 -
LeetCode LCP 06. 拿硬币
题目:桌上有 n 堆力扣币,每堆的数量保存在数组 coins 中。我们每次可以选择任意一堆,拿走其中的一枚或者两枚,求拿完所有力扣币的最少次数。示例 1:输入:[4,2,1]输出:4解释:第一堆力扣币最少需要拿 2 次,第二堆最少需要拿 1 次,第三堆最少需要拿 1 次,总共 4 次即可拿完。示例 2:输入:[2,3,10]输出:8class Solution { public int minCount(int[] coins) { int n = 0;原创 2020-11-24 23:16:03 · 87 阅读 · 0 评论 -
LeetCode 222. 完全二叉树的节点个数
题目:给出一个完全二叉树,求出该树的节点个数。说明:完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最左边的若干位置。若最底层为第 h 层,则该层包含 1~ 2h 个节点。示例:输入: 1 / \ 2 3 / \ /4 5 6输出: 6思路:分为两种情况,第一种是左子树的高度 n 与右子树的高度 m 相同,说明左子树已经填满了,左子树的节点数加上根节点的总数为 2^n,只需遍历右子树原创 2020-11-24 23:12:52 · 130 阅读 · 0 评论 -
LeetCode 1108. IP 地址无效化
题目:给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本。 所谓无效化 IP 地址,其实就是用 "[.]" 代替了每个 "."。示例 1:输入:address = "1.1.1.1"输出:"1[.]1[.]1[.]1"示例 2:输入:address = "255.100.50.0"输出:"255[.]100[.]50[.]0"思路:直接使用Java的替换函数。class Solution { public String defangIPaddr(S原创 2020-11-24 23:06:59 · 77 阅读 · 0 评论 -
LeetCode 237. 删除链表中的节点
题目:示例 1:输入:head = [4,5,1,9], node = 5输出:[4,1,9]解释:给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.示例 2:输入:head = [4,5,1,9], node = 1输出:[4,5,9]解释:给定你链表中值为 1 的第三个节点,那么在调用了你的函数之后,该链表应变为 4 -> 5 -> 9./** * Definition for singly-linked原创 2020-11-24 23:03:51 · 72 阅读 · 0 评论 -
LeetCode 1281. 整数的各位积和之差
题目:给你一个整数 n,请你帮忙计算并返回该整数「各位数字之积」与「各位数字之和」的差。示例 1:输入:n = 234输出:15 解释:各位数之积 = 2 * 3 * 4 = 24 各位数之和 = 2 + 3 + 4 = 9 结果 = 24 - 9 = 15示例 2:输入:n = 4421输出:21解释: 各位数之积 = 4 * 4 * 2 * 1 = 32 各位数之和 = 4 + 4 + 2 + 1 = 11 结果 = 32 - 11 = 21思路:先将 int 类型转换原创 2020-11-24 23:00:40 · 147 阅读 · 0 评论 -
LeetCode 1480 一维数组的动态和
题目:给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的动态和。示例 1:输入:nums = [1,2,3,4]输出:[1,3,6,10]解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。示例 2:输入:nums = [1,1,1,1,1]输出:[1,2,3,4,5]解释:动态和计算过程为 [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1+1]原创 2020-11-22 17:30:21 · 123 阅读 · 0 评论 -
小白 LeetCode 5605 检查两个字符串数据是否相等
题目:给你两个字符串数组 word1 和 word2 。如果两个数组表示的字符串相同,返回 true ;否则,返回 false 。数组表示的字符串 是由数组中的所有元素 按顺序 连接形成的字符串。示例 1:输入:word1 = ["ab", "c"], word2 = ["a", "bc"]输出:true解释:word1 表示的字符串为 "ab" + "c" -> "abc"word2 表示的字符串为 "a" + "bc" -> "abc"两个字符串相同,返回 true示例原创 2020-11-22 17:07:07 · 141 阅读 · 0 评论 -
小白 LeetCode 242 有效的字母异位词
字母异位词字符串由相同字母组成,但允许排列顺序不同。如“aaabbb” 与 “ababab” 是字母异位词,而“aabb” 与 “ab” 不是字母异位词。题目:给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t = "car"输出: false思路:先判断字符串长度是否相同,若不同,直接返回false;若相同则继续判断原创 2020-11-22 16:39:27 · 96 阅读 · 0 评论