![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
野人小哥哥
捕获一只代码筑梦攻城狮,请查收。
展开
-
LeetCode--204. 计数质数
统计所有小于非负整数 n 的质数的数量。示例 1:输入:n = 10输出:4解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。示例 2:输入:n = 0输出:0示例 3:输入:n = 1输出:0提示:0 <= n <= 5 * 106来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/count-primes题解1: 最最最基础的解法,时间复杂度贼高。。。public int cou原创 2021-07-07 16:25:58 · 126 阅读 · 1 评论 -
LeetCode--121. 买卖股票的最佳时机
给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。示例 1:输入:[7,1,5,3,6,4]输出:5解释:在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。注意利润不能是 7-1原创 2021-06-30 12:14:58 · 153 阅读 · 2 评论 -
LeetCode--53. 最大子序和
给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例 2:输入:nums = [1]输出:1来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-subarray题解1: 超级暴力的解法——二重循环。。。思路很简单,从数原创 2021-06-29 21:02:12 · 83 阅读 · 1 评论 -
LeetCode--476. 数字的补数
给你一个 正 整数 num ,输出它的补数。补数是对该数的二进制表示取反。示例 1:输入:num = 5输出:2解释:5 的二进制表示为 101(没有前导零位),其补数为 010。所以你需要输出 2 。示例 2:输入:num = 1输出:0解释:1 的二进制表示为 1(没有前导零位),其补数为 0。所以你需要输出 0 。提示:给定的整数 num 保证在 32 位带符号整数的范围内。num >= 1你可以假定二进制数不包含前导零位。本题与 1009 https原创 2021-06-26 10:33:26 · 122 阅读 · 1 评论 -
LeetCode--367. 有效的完全平方数
给定一个 正整数 num ,编写一个函数,如果 num 是一个完全平方数,则返回 true ,否则返回 false 。进阶:不要 使用任何内置的库函数,如 sqrt 。示例 1:输入:num = 16输出:true示例 2:输入:num = 14输出:false来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/valid-perfect-square题解1: 那就根据提示用函数库喽,???? public boolean i原创 2021-06-25 10:39:29 · 114 阅读 · 1 评论 -
LeetCode--169. 多数元素
给定一个大小为 n 的数组,找到其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入:[3,2,3]输出:3示例 2:输入:[2,2,1,1,1,2,2]输出:2来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/majority-element题解: 核心思想是摩尔投票法,说简单点可以这样理解:从全局来看,多的那个数可以和其它数据进行一原创 2021-06-25 10:03:20 · 84 阅读 · 1 评论 -
LeetCode--136.只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/single-number题解:考虑位运算:1.任何数n和0的异或都为n;n^0=n2.相同的数异或为0. n^n原创 2021-06-24 15:57:34 · 85 阅读 · 0 评论 -
LeetCode每日1题--1736. 替换隐藏数字得到的最晚时间
给你一个字符串 time ,格式为 hh:mm(小时:分钟),其中某几位数字被隐藏(用 ? 表示)。有效的时间为 00:00 到 23:59 之间的所有时间,包括 00:00 和 23:59 。替换 time 中隐藏的数字,返回你可以得到的最晚有效时间。示例 1:输入:time = “2?:?0”输出:“23:50”解释:以数字 ‘2’ 开头的最晚一小时是 23 ,以 ‘0’ 结尾的最晚一分钟是 50 。示例 2:输入:time = “0?:3?”输出:“09:39”来源:力扣(L原创 2021-05-07 16:02:13 · 286 阅读 · 0 评论 -
LeetCode每日1题--680. 验证回文字符串 Ⅱ
给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。示例 1:输入: “aba”输出: True示例 2:输入: “abca”输出: True解释: 你可以删除c字符。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/valid-palindrome-iipublic boolean validPalindrome(String s) { StringBuilder str = new StringBu原创 2021-04-27 21:39:45 · 95 阅读 · 0 评论 -
LeetCode每日1题--925. 长按键入
你的朋友正在使用键盘输入他的名字 name。偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次。你将会检查键盘输入的字符 typed。如果它对应的可能是你的朋友的名字(其中一些字符可能被长按),那么就返回 True。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/long-pressed-name示例 1:输入:name = “alex”, typed = “aaleex”输出:true解释:‘alex’ 中的 ‘a原创 2021-04-26 21:25:23 · 79 阅读 · 0 评论 -
LeetCode每日1题--859.亲密字符串
题目给定两个由小写字母构成的字符串 A 和 B ,只要我们可以通过交换 A 中的两个字母得到与 B 相等的结果,就返回 true ;否则返回 false 。交换字母的定义是取两个下标 i 和 j (下标从 0 开始),只要 i!=j 就交换 A[i] 和 A[j] 处的字符。例如,在 “abcd” 中交换下标 0 和下标 2 的元素可以生成 “cbad” 。示例 1:输入: A = “ab”, B = “ba”输出: true解释: 你可以交换 A[0] = ‘a’ 和 A[1] = ‘b’原创 2021-04-24 21:45:48 · 164 阅读 · 0 评论