ACM
算法
江冷易水寒
人终会被年少不可得之物困扰一生。
展开
-
LeetCode - 二叉树的层序遍历 II
给定一个二叉树,返回其节点值自底向上的层序遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)原创 2021-11-29 10:36:01 · 224 阅读 · 0 评论 -
判断是否为素数的高效方法(Python)
算法一:针对输入的数字x,我们可以遍历从2到x-1这个区间中的数,如果x能被这个区间中任意一个数整除,那么它就不是质数。def is_prime1(x): for i in range(2, x): if num % i == 0: return False return True算法二:对算法一的优化,事实上只需要遍历从2到√x即可。def is_prime2(x): for i in range(2, int(x ** 0.转载 2021-01-20 10:19:33 · 6720 阅读 · 1 评论 -
LeetCode [102] 二叉树的层序遍历
思想:二叉树层次遍历,利用队列,每次从队列中取出一行数据存放到list中,再将list添加到list中。视频演示层次遍历过程C++代码: class Solution {public: vector<vector<int>> levelOrder(TreeNode* root) { vector<vector<int>> res; if(root == NULL) return re.原创 2020-07-14 16:25:32 · 132 阅读 · 0 评论 -
LeetCode-对称二叉树(相似二叉树)(101)
给定一棵二叉树,检查它是否是镜像对称的。这题也可以换一种问法:给定两棵二叉树B1、B2,问两颗二叉树是否相似?两种问法的算法一样,区别差在根节点上。class Solution {public: bool isSymmetric(TreeNode* root) { return isSym(root,root); } bool isSym(TreeNode* b1,TreeNode* b2){ if(b1 == NULL &&a原创 2020-07-14 14:07:49 · 176 阅读 · 0 评论 -
如何优雅的刷LeetCode
相信大家刷LeetCode一般都是用网页查看题目,然后本地编写代码然后调试,最后在粘贴到网页上测试代码,这样显然很不优雅,如何优雅的刷LeetCode呢?一、安装VsCode 二、安装LeetCode插件三、切换到LeetCode中文版需要注意leetcode有中文版(https://leetcode-cn.com)和英文版(https://leetcode.com)两个版本,并且两个版本账户是不互通的。一般我们如果不是人在国外使用leetcode,默认都是中文版,但LeetCo..原创 2020-07-13 08:49:49 · 2355 阅读 · 0 评论 -
LeetCode-最小覆盖子串(76)
最小覆盖子串给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串。示例:输入: S = "ADOBECODEBANC", T = "ABC"输出: "BANC"说明:如果 S 中不存这样的子串,则返回空字符串 ""。如果 S 中存在这样的子串,我们保证它是唯一的答案。题目地址:https://leetcode-cn.com/probl...原创 2019-08-30 20:50:03 · 6143 阅读 · 2 评论 -
LeetCode-字符串相加(415)
字符串相加给定两个字符串形式的非负整数num1 和num2,计算它们的和。注意:num1 和num2的长度都小于 5100.num1 和num2 都只包含数字0-9.num1 和num2 都不包含任何前导零。你不能使用任何內建 BigInteger 库,也不能直接将输入的字符串转换为整数形式。题目地址:https://leetcode-cn.com/problems...原创 2019-08-29 07:16:26 · 144 阅读 · 0 评论 -
LeetCode-翻转字符串里的单词(151)
翻转字符串里的单词给定一个字符串,逐个翻转字符串中的每个单词。示例 1:输入: "the sky is blue"输出:"blue is sky the"示例 2:输入: " hello world! "输出:"world! hello"解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:输入: "a good exam...原创 2019-08-27 08:28:19 · 159 阅读 · 0 评论 -
LeetCode-二进制求和(67)
二进制求和给定两个二进制字符串,返回他们的和(用二进制表示)输入为非空字符串且只包含数字1和0。示例1:输入: a = "11", b = "1"输出: "100"示例2:输入: a = "1010", b = "1011"输出: "10101"题目地址:https://leetcode-cn.com/problems/add-binary/思路:如果a...原创 2019-08-27 07:29:15 · 100 阅读 · 0 评论 -
LeetCode-电话号码的字母组合(17)
电话号码的字母组合给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。示例:输入:"23"输出:["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].说明:尽管上面的答案是按字典序排列的,但是你可以任意选择答案输出的顺序。题目地址...原创 2019-08-25 09:23:12 · 120 阅读 · 0 评论 -
LeetCode-最长公共前缀(14)
最长公共前缀编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。示例1:输入: ["flower","flow","flight"]输出: "fl"示例2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。题目地址:https://leetcode-cn.com/problems/lo...原创 2019-08-25 07:08:37 · 86 阅读 · 0 评论 -
LeetCode-两数之和(01)
两数之和给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]...原创 2019-08-24 08:19:54 · 78 阅读 · 0 评论 -
LeetCode-2的幂(231)
LeetCode-2的幂给定一个整数,编写一个函数来判断它是否是 2 的幂次方。示例1:输入: 1输出: true解释: 20= 1示例 2:输入: 16输出: true解释: 24= 16示例 3:输入: 218输出: false题目地址:https://leetcode-cn.com/problems/power-of-two/方法一:暴力法(会...原创 2019-08-22 16:14:29 · 126 阅读 · 0 评论 -
LeetCode-最长回文子串(5)
最长回文子串给定一个字符串 s,找到 s 中最长的回文子串。你可以假设s 的最大长度为 1000。示例 1:输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。示例 2:输入: "cbbd"输出: "bb"题目地址:https://leetcode-cn.com/problems/longest-palindromic-substring/...原创 2019-08-22 08:18:50 · 142 阅读 · 0 评论 -
LeetCode-无重复字符的最长子串(3)
无重复字符的最长子串给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例 3:输入: "pwwkew"输出: 3解释: 因为无重...原创 2019-08-21 11:22:39 · 129 阅读 · 0 评论 -
OJ-A + B Again(HDU-2057)
A + B AgainTime Limit: 1000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 12892Accepted Submission(s): 5636Problem DescriptionThere must be many A + ...原创 2019-08-21 11:00:36 · 205 阅读 · 0 评论 -
LeetCode-合并两个有序链表(21)
合并两个有序链表将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4题目地址:https://leetcode-cn.com/problems/merge-two-sorted-lists/方法一:创...原创 2019-09-01 19:46:27 · 106 阅读 · 0 评论