LeetCode
折剑山庄
金戈铁马旧,望你伫桥头。
展开
-
leetcode 872 C++ 判断两棵二叉树叶值序列是否相同
leetcode 872 C++ 判断两棵二叉树叶值序列是否相同刷题笔记六题目:leetcode-872类型归属:二叉树难度:简单题目请考虑一棵二叉树上所有的叶子,这些叶子的值按从左到右的顺序排列形成一个 叶值序列,判断两棵树的叶值序列是否相等。知识点二叉树的递归;框架;二叉树的深度遍历遍历。提交代码/** * Definition for a binary tree node. * struct TreeNode { * int val; * Tre原创 2021-03-18 11:07:16 · 208 阅读 · 1 评论 -
LeetCode刷题_125:验证回文串【C++】
题目描述给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。说明:本题中,我们将空字符串定义为有效的回文串。示例 1:输入: "A man, a plan, a canal: Panama"输出: true示例 2:输入:"race a car"输出:false答案代码class Solution {public: bool isPal...原创 2019-08-06 16:29:43 · 120 阅读 · 0 评论 -
LeetCode刷题_167:两数之和 II - 输入有序数组【C++】
题目描述给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入:numbers = [2, 7, 11, 15],...原创 2019-08-06 13:51:48 · 117 阅读 · 0 评论 -
LeetCode刷题_215:数组中的第K个最大元素【C++】
题目描述在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。示例 1:输入: [3,2,1,5,6,4] 和 k = 2输出: 5示例 2:输入: [3,2,3,1,2,4,5,5,6] 和 k = 4输出: 4说明:你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度答案代码class Sol...原创 2019-08-06 13:09:41 · 268 阅读 · 0 评论 -
LeetCode刷题_88:合并两个有序数组【C++】
题目描述给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0],m = 3nums2...原创 2019-08-06 13:05:18 · 145 阅读 · 0 评论 -
LeetCode刷题_75:颜色分类【C++】
题目描述给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。注意:不能使用代码库中的排序函数来解决这道题。示例:输入:[2,0,2,1,1,0]输出:[0,0,1,1,2,2]进阶:一个直观的解决方案是使用计数排序的两趟扫描算法。首先...原创 2019-08-05 16:56:38 · 162 阅读 · 0 评论 -
LeetCode刷题_283:移动零【C++】
题目描述给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入:[0,1,0,3,12]输出:[1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。答案代码class Solution{public: void moveZeroes(vector<int>& ...原创 2019-08-02 19:19:09 · 378 阅读 · 2 评论 -
LeetCode刷题_80:删除排序数组中的重复项 II【C++】
题目描述给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定 nums = [1,1,1,2,2,3],函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3 。你不需要考虑数组中超出新...原创 2019-08-02 19:12:36 · 183 阅读 · 0 评论 -
LeetCode刷题_27:移除元素【C++】
题目描述给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的...原创 2019-08-02 16:52:52 · 146 阅读 · 0 评论 -
LeetCode刷题_26:删除排序数组中的重复项【C++】
题目描述给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。示例 2:给...原创 2019-08-02 16:01:42 · 215 阅读 · 0 评论