数组/字符串
BananaScript
上至前后端人工智能,下至嵌入式树莓派,无所不能的IT全栈
展开
-
【luogu/字符串】多项式输出(所有情况一起处理)
问题描述:题目描述一元nnn次多项式可用如下的表达式表示:f(x)=anxn+an−1xn−1+⋯+a1x+a0,an≠0f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots +a_1x+a_0,a_n\ne 0 f(x)=anxn+an−1xn−1+⋯+a1x+a0,an≠0其中,aixia_ix^iaixi称为iii次项,aia_iai 称为ii...原创 2019-11-03 10:22:41 · 376 阅读 · 1 评论 -
【luogu/字符串】计算器的改良(表达式的解析与计算)
问题描述:题目背景NCLNCLNCL是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委托的一个任务:需要在该公司某型号的计算器上加上解一元一次方程的功能。实验室将这个任务交给了一个刚进入的新手ZL先生。题目描述为了很好的完成这个任务,ZLZLZL先生首先研究了一些一元一次方程的实例:4+3x=84+3x=84+3x=86a−5+1=2−2a6a-5+1=2...原创 2019-11-02 20:54:27 · 215 阅读 · 0 评论 -
【leetcode/数组和字符串】杨辉三角形(滚动数组 大数字乘法思考)
问题描述:给定一个非负索引k,其中 k≤33,返回杨辉三角的第 k 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 3输出: [1,3,3,1]进阶:你可以优化你的算法到 O(k) 空间复杂度吗?基本思路:一开始我的想法就是利用杨辉三角形和排列组合公式相结合。为了存储我的结果我确实需要O(k)的空间。但是这样超出了long ...原创 2019-10-22 08:44:09 · 266 阅读 · 0 评论 -
【leetcode/数组和字符串】删除排序数组中的重复项(双指针技巧)
问题描述:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。...原创 2019-10-22 08:11:25 · 231 阅读 · 0 评论 -
【leetcode/数组和字符串】反转字符串中的单词(stringstream和反向迭代器的使用)
问题描述:给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。示例1:输入: "Let's take LeetCode contest"输出: "s'teL ekat edoCteeL tsetnoc"注意:在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。基本思路:利用stringstream取出单词。 ...原创 2019-10-22 07:53:30 · 183 阅读 · 0 评论 -
【leetcode/数组和字符串】反转字符串里的单词
问题描述:给定一个字符串,逐个翻转字符串中的每个单词。示例 1:输入: "the sky is blue"输出:"blue is sky the"示例 2:输入: " hello world! "输出:"world! hello"解释: 输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:输入: "a good ...原创 2019-10-22 07:45:22 · 221 阅读 · 0 评论 -
【leetcode/数组和字符串】旋转数组(将一个数组的元素移动到数组的尾部)
问题描述:给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。示例 1:输入: [1,2,3,4,5,6,7] 和 k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向右旋转 2 步: [6,7,1,2,3,4,5]向右旋转 3 步: [5,6,7,1,2,3,4]示例2:输入: [-1,...原创 2019-10-21 23:56:40 · 485 阅读 · 0 评论 -
【leetcode/数组和字符串】长度最小的子数组(双指针)
问题描述:给定一个含有n个正整数的数组和一个正整数s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组。如果不存在符合条件的连续子数组,返回 0。示例:输入: s = 7, nums = [2,3,1,2,4,3]输出: 2解释: 子数组[4,3]是该条件下的长度最小的连续子数组。进阶:如果你已经完成了O(n) 时间复杂度的解法, 请尝试O(n lo...原创 2019-10-21 18:03:24 · 91 阅读 · 0 评论 -
【leetcode/数组和字符串】最大连续1的个数(双指针)
问题描述:给定一个二进制数组, 计算其中最大连续1的个数。示例 1:输入: [1,1,0,1,1,1]输出: 3解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.注意:输入的数组只包含0 和1。 输入数组的长度是正整数,且不超过 10,000。基本思路:还是采用双指针。一个指向开头的1, 一个指向末尾的1。两者做差就是该区间1的长度。...原创 2019-10-21 17:34:33 · 222 阅读 · 0 评论 -
【leetcode/数组和字符串】移除元素(双指针技巧)
问题描述:给定一个数组 nums和一个值 val,你需要原地移除所有数值等于val的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 n...原创 2019-10-21 17:15:15 · 111 阅读 · 0 评论 -
【leetcode/数组和字符串】两数之和——输入有序数组(双指针技巧)
问题描述:给定一个已按照升序排列的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1必须小于index2。说明:返回的下标值(index1 和 index2)不是从零开始的。 你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numbers = [2, 7, 1...原创 2019-10-21 17:01:00 · 126 阅读 · 0 评论 -
【leetcode/数组字符串】杨辉三角(水题)
问题描述:给定一个非负整数numRows,生成杨辉三角的前numRows行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]基本思路:按照定义来呗。当然你也可以选择利用排列和组合的公式来求,但是那个重复性太大了...原创 2019-10-21 11:47:49 · 126 阅读 · 0 评论 -
【leetcode/数组字符串】螺旋矩阵(数组的遍历)
问题描述:给定一个包含m x n个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例1:输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例2:输入:[ [1, 2, 3, 4], [5, 6, 7, 8], [9,10,11...原创 2019-10-21 11:38:17 · 261 阅读 · 0 评论 -
【leetcode/数组字符串】对角线遍历(其他遍历方式)
问题描述:给定一个含有 M x N 个元素的矩阵(M 行,N 列),请以对角线遍历的顺序返回这个矩阵中的所有元素,对角线遍历如下图所示。示例:输入:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]输出: [1,2,4,7,5,3,6,8,9]解释:基本思路:本题是一个很好的例子,因为它引入了一种完全不同的遍历方式。我...原创 2019-10-21 09:56:31 · 192 阅读 · 0 评论