![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 88
源主儿
这个作者很懒,什么都没留下…
展开
-
数据结构--LeetCode专题练习 Day14
43. 字符串相乘给定两个以字符串形式表示的非负整数num1和num2,返回num1和num2的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = "2", num2 = "3"输出: "6"示例2:输入: num1 = "123", num2 = "456"输出: "56088"说明:num1和num2的长度小于110。num1 和num2 只包含数字0-9。num1 和num2均不以零开头,除非是数字 0 本身。不能使...原创 2021-09-19 09:54:14 · 279 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day13
290. 单词规律给定一种规律 pattern和一个字符串str,判断 str 是否遵循相同的规律。这里的遵循指完全匹配,例如,pattern里的每个字母和字符串str中的每个非空单词之间存在着双向连接的对应规律。示例1:输入: pattern = "abba", str = "dog cat cat dog"输出: true示例 2:输入:pattern = "abba", str = "dog cat cat fish"输出: false示例 3:...原创 2021-09-06 12:06:18 · 123 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day12
415. 字符串相加给定两个字符串形式的非负整数num1 和num2,计算它们的和。提示:num1 和num2的长度都小于 5100num1 和num2 都只包含数字0-9num1 和num2 都不包含任何前导零你不能使用任何內建 BigInteger 库,也不能直接将输入的字符串转换为整数形式原始思路://求和为k的子数组的个数(子数组中数字要连续)//双指针:1.i指向第一个数 2. j指向i后一个数,直到i+j所遍历的数等于K为止 ,j遍历之和记为ans//若an...原创 2021-09-04 17:34:06 · 96 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day11
334. 递增的三元子序列给你一个整数数组nums ,判断这个数组中是否存在长度为 3 的递增子序列。如果存在这样的三元组下标 (i, j, k)且满足 i < j < k ,使得nums[i] < nums[j] < nums[k] ,返回 true ;否则,返回 false 。示例 1:输入:nums = [1,2,3,4,5]输出:true解释:任何 i < j < k 的三元组都满足题意示例 2:输入:nums = [5,4,...原创 2021-09-01 11:22:07 · 203 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day10
240. 搜索二维矩阵 II编写一个高效的算法来搜索mxn矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例 1:输入:matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]], target = 5输出:true示例 2:输入:matrix = [[1,4,...原创 2021-08-27 20:35:54 · 111 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day9
119. 杨辉三角 II给定一个非负索引rowIndex,返回「杨辉三角」的第rowIndex行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。示例 1:输入: rowIndex = 3输出: [1,3,3,1]示例 2:输入: rowIndex = 0输出: [1]示例 3:输入: rowIndex = 1输出: [1,1]提示:0 <= rowIndex <= 33原始思路:输入行数-->输出对应的一行的数字/...原创 2021-08-26 07:42:24 · 178 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day8
75. 颜色分类给定一个包含红色、白色和蓝色,一共n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、1 和 2 分别表示红色、白色和蓝色。示例 1:输入:nums = [2,0,2,1,1,0]输出:[0,0,1,1,2,2]示例 2:输入:nums = [2,0,1]输出:[0,1,2]示例 3:输入:nums = [0]输出:[0]示例 4:输入:nums = [1]输出:[1]..原创 2021-08-25 16:16:07 · 88 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day7
136. 只出现一次的数字给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4原始思路://1.使用哈希表记录每个数字出现的次数2.输出次数为1的数//1.排序2.与左右数字相比较,若不等,则输出该数字更正思路:1.排序(1)排序(2)与左右数字.原创 2021-08-21 16:58:48 · 154 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day6
387. 字符串中的第一个唯一字符给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = "leetcode"返回 0s = "loveleetcode"返回 2提示:你可以假定该字符串只包含小写字母。原始思路:1.字符串转为数组2.建立hash表记录每个字母的次数3.输出hash表中下标为1的第一个字母class Solution {public: int firstUniqChar(string s) {原创 2021-08-17 09:54:19 · 178 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day5
36. 有效的数独请你判断一个9x9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。数字1-9在每一行只能出现一次。数字1-9在每一列只能出现一次。数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。(请参考示例图)数独部分空格内已填入了数字,空白格用'.'表示。注意:一个有效的数独(部分已被填充)不一定是可解的。只需要根据以上规则,验证已经填入的数字是否有效即可。示例 1:输入:board =[["5","3","...原创 2021-08-14 06:56:29 · 202 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day4
566. 重塑矩阵在 MATLAB 中,有一个非常有用的函数 reshape ,它可以将一个m x n 矩阵重塑为另一个大小不同(r x c)的新矩阵,但保留其原始数据。给你一个由二维数组 mat 表示的m x n 矩阵,以及两个正整数 r 和 c ,分别表示想要的重构的矩阵的行数和列数。重构后的矩阵需要将原始矩阵的所有元素以相同的 行遍历顺序 填充。如果具有给定参数的 reshape 操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。示例 1:输入:mat = [..原创 2021-08-11 10:01:34 · 119 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day3
350. 两个数组的交集 II给定两个数组,编写一个函数来计算它们的交集。示例 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.选出较短的数组 2.将短数组中的数值与长数组中的比较,输出相等的数值(..原创 2021-08-10 10:05:31 · 202 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day2
1. 两数之和给定一个整数数组 nums和一个整数目标值 target,请你在该数组中找出 和为目标值 target的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2,...原创 2021-08-09 07:41:47 · 113 阅读 · 0 评论 -
数据结构--LeetCode专题练习 Day1
217. 存在重复元素给定一个整数数组,判断是否存在重复元素。如果存在一值在数组中出现至少两次,函数返回true。如果数组中每个元素都不相同,则返回false。示例 1:输入: [1,2,3,1]输出: true示例 2:输入: [1,2,3,4]输出: false示例3:输入: [1,1,1,3,3,4,3,2,4,2]输出: true原始思路:暴力求解,使用了两重循环:当第一重循环遍历到i时,第二重循环从第i+1个位置开始遍历寻找有无与第i个元素相...原创 2021-08-07 09:05:41 · 142 阅读 · 0 评论