102. Binary Tree Level Order Traversal/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/ class Solution { public:vector<vector<int>> levelOrder(TreeNode* root) {vector<vector<int> > result;vector<int> V;queue<TreeNode*> Q;TreeNode* p;if(root) Q.push(root);while(!Q.empty(...
138. 复制带随机指针的链表 难度中等478 给定一个链表,每个节点包含一个额外增加的随机指针,该指针可以指向链表中的任何节点或空节点。 要求返回这个链表的 深拷贝。 我们用一个由 n 个节点组成的链表来表示输入/输出中的链表。每个节点用一个 [val, random_index] 表示: val:一个表示 Node.val 的整数。random_index:随机指针指向的节点索引(范围从 0 到 n-1);如果不指向任何节点,则为 null 。 示例 1:输入:head =...
1684. 统计一致字符串的数目 难度简单5 给你一个由不同字符组成的字符串 allowed 和一个字符串数组 words 。如果一个字符串的每一个字符都在 allowed 中,就称这个字符串是 一致字符串 。 请你返回 words 数组中 一致字符串 的数目。 示例 1: 输入:allowed = "ab", words = ["ad","bd","aaab","baa","badab"] 输出:2 解释:字符串 "aaab" 和 "baa" 都是一致字符串,因为它们只包含字符 'a' 和 'b' 。示例 2: 输入:allowed =...
1662. 检查两个字符串数组是否相等 难度简单6 给你两个字符串数组 word1 和 word2 。如果两个数组表示的字符串相同,返回 true ;否则,返回 false 。 数组表示的字符串 是由数组中的所有元素 按顺序 连接形成的字符串。 示例 1: 输入:word1 = ["ab", "c"], word2 = ["a", "bc"] 输出:true 解释: word1 表示的字符串为 "ab" + "c" -> "abc" word2 表示的字符串为 "a" + "bc" -> "abc" 两个字符串相同,返回 true 示例 2: 输...
788. 旋转数字 难度简单88 我们称一个数 X 为好数, 如果它的每位数字逐个地被旋转 180 度后,我们仍可以得到一个有效的,且和 X 不同的数。要求每位数字都要被旋转。 如果一个数的每位数字被旋转以后仍然还是一个数字, 则这个数是有效的。0, 1, 和 8 被旋转后仍然是它们自己;2 和 5 可以互相旋转成对方(在这种情况下,它们以不同的方向旋转,换句话说,2 和 5 互为镜像);6 和 9 同理,除了这些以外其他的数字旋转以后都不再是...
696. 计数二进制子串 难度简单331 给定一个字符串 s,计算具有相同数量 0 和 1 的非空(连续)子字符串的数量,并且这些子字符串中的所有 0 和所有 1 都是连续的。 重复出现的子串要计算它们出现的次数。 示例 1 : 输入: "00110011" 输出: 6 解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”。请注意,一些重复出现的子串要计算它们出现的次数。另外,“00110011”不是有效的子串...
文章目录 一、思路二、代码1.python2.C++一、思路 判断magazine中的字母能否组成ransomNote。 magazine中的字母可以比ransomNote多,所以我们对magazine中的字母简历哈希表m(char,int)m(char,int)m(char,int),然后ransomNote对mmm查表,mmm在相应位置减1,若果出现小于0的数,则不能构成。 PS:当ransomNote中出现了mmm中不存在的值时,可以直接返回false。 二、代码 1.python 代码如下: class Solution:def canConstruct(self, ...
剑指 Offer 32 - II. 从上到下打印二叉树 II/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/ class Solution { public:vector<vector<int>> levelOrder(TreeNode* root) { // 层次遍历,默写题vector<vector<int>> result;vector<int> V;queue<TreeNode*> Q;TreeNode* p;if(root) Q.pus...
剑指 Offer 33. 二叉搜索树的后序遍历序列class Solution { public:bool buildTree(vector<int> &postorder, vector<int> &inorder, int postL, int postR, int inL, int inR) {if(postR == postL && inR == inL) return true;if(postR - postL != inR - inL) return false;int cnt = 0;while(inL + cnt < inR && inorder[inL + cnt] != postorder[postR-1]) cnt++;if(inL + cnt >= inR) return false;bool left_flag = buildTree(...
编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。 如果 n 是快乐数就返回 True ;不是,则返回 False 。 示例: 输入:19 输出:true 解释: 12 + 92 = 82 82 + 22 = 68 62 + 82 = 100 12 + 02 + 02 = 1 思路: 按照快乐数的定义,如果...
748. 最短补全词 难度简单36 给定一个字符串牌照 licensePlate 和一个字符串数组 words ,请你找出并返回 words 中的 最短补全词 。 如果单词列表(words)中的一个单词包含牌照(licensePlate)中所有的字母,那么我们称之为 补全词 。在所有完整词中,最短的单词我们称之为 最短补全词 。 单词在匹配牌照中的字母时要: 忽略牌照中的数字和空格。不区分大小写,比如牌照中的 "P" 依然可以匹配单词中的 "p" 字母。如果某个字母在牌...
问题: 难度:medium 说明: 给出一个数组 nums,和一个长度 K,要求返回一个长度 K 的数组,该数组属于原数组 nums 的子序列,然后要求返回数组是最具有竞争力,其实就是子序列的数字相对原数组顺序,每一位都是最小的。 题目连接:https://leetcode.com/problems/find-the-most-competitive-subsequence/ 输入范围: 1 <= nums.length <= 1050 <= nums[i] <= 1091 <= k <= nums.length 输入案例: Example 1: Input: nums = [3,5,...
问题: 难度:medium 说明: 给出一个数字 N,然后根据 a e i o u 五个元音字母进行组合,组合一个 N 长度的字符串。然后每个原音后面只能够组合 按 aeiou 排序的 自己位置或后面位置的字母,如 a 拼接 aa ae ai ao au,而 e 拼接 ee ei eo eu,按照 aeiou 顺序,每个字母后面只能跟一个和他一样的或者位置比他后的元音字母。 题目连接:https://leetcode.com/problems/count-sorted-vowel-strings/ 输入范围: 1 <= n <= 50 输入...
C++描述 LeetCode 5243. 同积元组??大家好,我叫亓官劼(q guān ji ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客,唯一博客更新的地址为:亓官劼的博客 ,同时正在尝试在B站中做一些内容分享,B站主页为: 亓官劼的B站主页本文原创为亓官劼,请大家支持原创,部分平台一直在恶意盗取博主的文章!!! 若需联系博主,可以联系本人微信:qiguanjie2015题目 给你一个由 不同 正整数组成的数...
文章目录 题目分析题目链接题目分析对于vector中的每一个字符串,遍历之,如果出现不同的字母就放弃,继续遍历下一个,如果该字符串中的每个字母都是allowed中的,计数器加1. ac代码 class Solution { public:int countConsistentStrings(string allowed, vector<string>& words) {int n = words.size();int res=0;for(int i=0;i<n;i++){string t=words[i];// cout<<t<<endl;for(int j=0;j<t.size();j++){if( allowed.find(t[j])==...