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 · 251 阅读 · 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 · 233 阅读 · 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 · 216 阅读 · 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 · 222 阅读 · 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 · 232 阅读 · 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 · 184 阅读 · 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=n 2.相同的数异或为0. n^n原创 2021-06-24 15:57:34 · 158 阅读 · 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 · 386 阅读 · 0 评论 -
LeetCode每日1题--680. 验证回文字符串 Ⅱ
给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。 示例 1: 输入: “aba” 输出: True 示例 2: 输入: “abca” 输出: True 解释: 你可以删除c字符。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/valid-palindrome-ii public boolean validPalindrome(String s) { StringBuilder str = new StringBu原创 2021-04-27 21:39:45 · 164 阅读 · 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 · 174 阅读 · 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 · 225 阅读 · 0 评论
分享