![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
个人leetcode练习
今天吃白斩鸡了吗
这个作者很懒,什么都没留下…
展开
-
350. 两个数组的交集 II
错了,存一下。。。。 350. 两个数组的交集 II 给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。可以不考虑输出结果的顺序。 示例 1: 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2,2] 示例 2: 输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出:[4,9] 提示: 1 <= nums原创 2022-05-19 22:12:59 · 77 阅读 · 0 评论 -
孩子兄弟链表
例题:孩子-兄弟链表存储结构中求树的叶子结点的算法思路 typedef struct CSNode { int val; CSNode* firstchild, * nextsibling; } CSNode, * CSTree; int dfs(CSTree root) { if (!root) return 0; else if (!root->firstchild) return 1; else { int left = dfs(root->firstchild); .原创 2021-05-10 18:06:43 · 664 阅读 · 0 评论 -
5.10力扣叶子相似
5.10力扣叶子相似 深度优先算法以为和答案写的一样但是结果总是不同,放代码: void dfs(struct TreeNode* node, int* seq, int* seqSize) { if (!node->left && !node->right) { seq[(*seqSize)++] = node->val; } else { if (node->left) { dfs(node-原创 2021-05-10 16:18:19 · 36 阅读 · 0 评论 -
1389. 按既定顺序创建目标数组
给你两个整数数组 nums 和 index。你需要按照以下规则创建目标数组:目标数组 target 最初为空。 按从左到右的顺序依次读取 nums[i] 和 index[i],在 target 数组中的下标 index[i] 处插入值 nums[i] 。 重复上一步,直到在 nums 和 index 中都没有要读取的元素。 请你返回目标数组。 题目保证数字插入位置总是存在。 样例: 输入:nums = [0,1,2,3,4], index = [0,1,2,2,1] 输出:[0,4,1,3,2] 解释.原创 2020-09-25 00:46:30 · 51 阅读 · 0 评论 -
数组移动中的指针转化
字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。 示例 : 输入: s = “abcdefg”, k = 2 输出: “cdefgab” 是一道很简单的leetcode,使用c,但是在答案里面看到了一个当时不太理解的答案: char* reverseLeftWords(char* s, int n){ int len = strlen(s),i.原创 2020-09-15 21:17:02 · 108 阅读 · 0 评论 -
leetcode动态变量使用
给你一个数组candies和一个整数extraCandies,其中candies[i]代表第 i 个孩子拥有的糖果数目。 对每一个孩子,检查是否存在一种方案,将额外的extraCandies个糖果分配给孩子们之后,此孩子有 最多的糖果。注意,允许有多个孩子同时拥有 最多的糖果数目。原创 2020-09-14 21:34:51 · 169 阅读 · 0 评论