随笔分类 -  算法

leetcode中刷题
摘要:输入一个字符串,打印出该字符串中字符的所有排列。 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。 示例: 输入:s = "abc" 输出:["abc","acb","bac","bca","cab","cba"] 限制: 1 ⇐ s 的长度 ⇐ 8 来源:力扣(LeetCode) 链接: 阅读全文
posted @ 2021-06-22 22:36 Myuniverse 阅读(336) 评论(0) 推荐(0) 编辑
摘要:二进制手表顶部有 4 个 LED 代表 小时(0-11),底部的 6 个 LED 代表 分钟(0-59)。每个 LED 代表一个 0 或 1,最低位在右侧。 给你一个整数 turnedOn ,表示当前亮着的 LED 的数量,返回二进制手表可以表示的所有可能时间。你可以 按任意顺序 返回答案。 小时不 阅读全文
posted @ 2021-06-21 11:49 Myuniverse 阅读(167) 评论(0) 推荐(0) 编辑
摘要:一个王国里住着国王、他的孩子们、他的孙子们等等。每一个时间点,这个家庭里有人出生也有人死亡。 这个王国有一个明确规定的皇位继承顺序,第一继承人总是国王自己。我们定义递归函数 Successor(x, curOrder) ,给定一个人 x 和当前的继承顺序,该函数返回 x 的下一继承人。 Succes 阅读全文
posted @ 2021-06-20 16:21 Myuniverse 阅读(454) 评论(0) 推荐(0) 编辑
摘要:给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满足条件且不重复的四元组。 注意:答案中不可以包含重复的四元组。 示例 1: 输入:nums = [1 阅读全文
posted @ 2021-06-17 12:40 Myuniverse 阅读(39) 评论(0) 推荐(0) 编辑
摘要:亚历克斯和李用几堆石子在做游戏。偶数堆石子排成一行,每堆都有正整数颗石子 piles[i] 。 游戏以谁手中的石子最多来决出胜负。石子的总数是奇数,所以没有平局。 亚历克斯和李轮流进行,亚历克斯先开始。 每回合,玩家从行的开始或结束处取走整堆石头。 这种情况一直持续到没有更多的石子堆为止,此时手中石 阅读全文
posted @ 2021-06-16 09:41 Myuniverse 阅读(225) 评论(0) 推荐(0) 编辑
摘要:符合下列属性的数组 arr 称为 山脉数组 : arr.length >= 3 存在 i(0 < i < arr.length - 1)使得: arr[0] < arr[1] < ... arr[i-1] < arr[i] arr[i] > arr[i+1] > ... > arr[arr.leng 阅读全文
posted @ 2021-06-15 12:35 Myuniverse 阅读(58) 评论(0) 推荐(0) 编辑
摘要:猜数字游戏的规则如下: 每轮游戏,我都会从 1 到 n 随机选择一个数字。 请你猜选出的是哪个数字。 如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了。 你可以通过调用一个预先定义好的接口 int guess(int num) 来获取猜测结果,返回值一共有 3 种可能的情况(-1, 阅读全文
posted @ 2021-06-14 09:42 Myuniverse 阅读(346) 评论(0) 推荐(0) 编辑
摘要:给定一个整数数组 A,以及一个整数 target 作为目标值,返回满足 i < j < k 且 A[i] + A[j] + A[k] == target 的元组 i, j, k 的数量。 由于结果会非常大,请返回 结果除以 10^9 + 7 的余数。 示例 1: 输入:A = [1,1,2,2,3, 阅读全文
posted @ 2021-06-13 12:26 Myuniverse 阅读(104) 评论(0) 推荐(0) 编辑
摘要:给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。 示例: 输入:nums = [-1,2,1,-4], target = 1 输出:2 解释:与 target 最 阅读全文
posted @ 2021-06-12 10:33 Myuniverse 阅读(59) 评论(0) 推荐(0) 编辑
摘要:完全平方数 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 给你一个整数 n ,返回和为 n 的完全平方数的 最少数量 。 完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积 阅读全文
posted @ 2021-06-11 12:11 Myuniverse 阅读(1835) 评论(0) 推荐(0) 编辑
摘要:给定不同面额的硬币和一个总金额。写出函数来计算可以凑成总金额的硬币组合数。假设每一种面额的硬币有无限个。 示例 1: 输入: 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-06-10 10:48 Myuniverse 阅读(57) 评论(0) 推荐(0) 编辑
摘要:给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例 1: 输入:nums = [-1,0,1,2,-1,-4] 输出:[[-1,-1,2] 阅读全文
posted @ 2021-06-09 12:14 Myuniverse 阅读(344) 评论(0) 推荐(0) 编辑
摘要:有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。 每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为 x 和 y,且 x ⇐ y。那么粉碎的可能结果如下: 如果 x == y,那么两块石头都会被完全粉碎; 如果 x != y,那么 阅读全文
posted @ 2021-06-08 14:02 Myuniverse 阅读(112) 评论(0) 推荐(0) 编辑
摘要:给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的大小,该子集中 最多 有 m 个 0 和 n 个 1 。 如果 x 的所有元素也是 y 的元素,集合 x 是集合 y 的 子集 。 示例 1: 输入:strs = ["10", "0001", "1 阅读全文
posted @ 2021-06-06 12:40 Myuniverse 阅读(105) 评论(0) 推荐(0) 编辑
摘要:最初在一个记事本上只有一个字符 'A'。你每次可以对这个记事本进行两种操作: Copy All (复制全部) : 你可以复制这个记事本中的所有字符(部分的复制是不允许的)。 Paste (粘贴) : 你可以粘贴你上一次复制的字符。 给定一个数字 n 。你需要使用最少的操作次数,在记事本中打印出恰好 阅读全文
posted @ 2021-06-04 18:04 Myuniverse 阅读(128) 评论(0) 推荐(0) 编辑
摘要:给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 图示两个链表在节点 c1 开始相交: 题目数据 保证 整个链式结构中不存在环。 注意,函数返回结果后,链表必须 保持其原始结构 。 示例 1: 输入:interse 阅读全文
posted @ 2021-06-04 10:40 Myuniverse 阅读(194) 评论(0) 推荐(0) 编辑
摘要:有两种特殊字符。第一种字符可以用一比特0来表示。第二种字符可以用两比特(10 或 11)来表示。 现给一个由若干比特组成的字符串。问最后一个字符是否必定为一个一比特字符。给定的字符串总是由0结束。 示例 1: 输入: bits = [1, 0, 0] 输出: True 解释: 唯一的编码方式是一个两 阅读全文
posted @ 2021-06-02 22:47 Myuniverse 阅读(267) 评论(0) 推荐(0) 编辑
摘要:给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。 示例 1: 输入: [[0,0,0], [0,1,0], [0,0,0]] 输出: [[0,0,0], [0,1,0], [0,0,0]] 示例 2: 输入: [[0,0,0], [0,1,0], 阅读全文
posted @ 2021-06-02 13:48 Myuniverse 阅读(346) 评论(0) 推荐(0) 编辑
摘要:给定一个整数,写一个函数来判断它是否是 4 的幂次方。如果是,返回 true ;否则,返回 false 。 整数 n 是 4 的幂次方需满足:存在整数 x 使得 n == 4x 示例 1: 输入:n = 16 输出:true 示例 2: 输入:n = 5 输出:false 示例 3: 输入:n = 阅读全文
posted @ 2021-05-31 18:58 Myuniverse 阅读(221) 评论(0) 推荐(0) 编辑
摘要:超级暴力解法 思路:循环三次 func find132pattern1(nums []int) bool { if len(nums)<=2{ return false } for i:=0;i<len(nums);i++{ for j:=i+1;j<len(nums);j++{ for k:=j+ 阅读全文
posted @ 2021-05-29 21:47 Myuniverse 阅读(75) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示