首页 > 其他分享 >代码随想录第二天|977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II

代码随想录第二天|977.有序数组的平方 ,209.长度最小的子数组 ,59.螺旋矩阵II

时间:2023-10-12 23:23:27浏览次数:47  
标签:977 cn 209 随想录 矩阵 数组 https

977 有序数组的平方

题目链接:https://leetcode.cn/problems/squares-of-a-sorted-array/

思路:双指针(实际是三指针),两个找最大值,一个确定平方后的位置。

209.长度最小的子数组

题目链接:https://leetcode.cn/problems/minimum-size-subarray-sum/

思路:很像双指针,一个指向子数组开头,一个指向子数组最后,交替移动,注意保持子数组满足题目要求。

59.螺旋矩阵II

题目链接:https://leetcode.cn/problems/spiral-matrix-ii/

思路:在构建矩阵时保持左闭右开的原则

标签:977,cn,209,随想录,矩阵,数组,https
From: https://www.cnblogs.com/elsy/p/17760774.html

相关文章

  • 2562. 找出数组的串联值
    题目题解直接使用双指针,依次拼接如果指针结束指向同一个数,则再加上该数classSolution{publiclongfindTheArrayConcVal(int[]nums){intleft=0;intright=nums.length-1;longres=0;while(right>left){......
  • day01-java数组
    数组概述数组的定义数组时相同类型的数据的有序集合数组描述的时相同类型的若干个数据,按照一定的先后次序排列组合而成。数组的声明和创建首先必须声明数组变量,才能在程序中使用数组。dateType[]arrayRefVar;或者dataTypearrayRefVar[];//效果相同,但不是所选方法java......
  • 代码随想录训练营的第二天(Python)| 977.有序数组的平方、209.长度最小的子数组
    977.有序数组的平方暴力求解(O(n+logn))classSolution:defsortedSquares(self,nums:List[int])->List[int]:returnsorted(i**2foriinnums)双指针(O(n))由于列表是单调递增的,元素平方后的最大值要么在最前面,要么在最后面classSolution:defsort......
  • 总结数组中常用的方法
    //改变原数组数组名.push(数据),返回数组的长度数组名.pop(),返回删除的那个数据数组名.unshift(数据),返回数组的长度数组名.shift(),返回删除掉的那个数据数组名.reverse(),返回翻转好的数组数组名.sort()会按照位排序,比如1,11,2;字符串会按照AscII码顺序单个比较字符数组名.sort(fu......
  • Scala学习(三)数组操作
    1、定长数组vara=newArray[String](10)vara=Array("zhangsan","lisi")2、变长数组ArrayBuffer相当于java的ArrayListimportscala.collection.mutable.ArrayBuffervara=ArrayBuffer[Int]()a+=1即向数组中放入一个元素值为1 a+=(1,2,3,4,5)a++=Array(6,7,8,9,10)a.tr......
  • 王道408---DS---线性表、栈、队列与数组
    错题2.21、题目中提到在第i个位置一般是指在下表为i的位置2、线性表元素的序号是从1开始,而在第n+1个位置插入相当于在表尾追加。静态链表树的双亲表示法就是使用了这种思想吧卡特兰数\[\text{}\frac1{n+1}C_{2n}^{n}\]栈的数学性质:n个不同元素进栈,出栈元素不同排列的个......
  • LeetCode Day02 977&209&59
    第一题是[977. 有序数组的平方]这题解题思路依旧可以用双指针,指针分别指向数组的头尾两端,然后对两端求乘积比较大小,把乘积值更大的存储到数组尾端,然后指针更新位置,代码如下。publicint[]sortedSquares(int[]nums){//res用于存储平方和结果int[]res=ne......
  • 152. 乘积最大子数组
    给你一个整数数组nums,请你找出数组中乘积最大的非空连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。测试用例的答案是一个32-位整数。子数组是数组的连续子序列。示例1:输入:nums=[2,3,-2,4]输出:6解释:子数组[2,3]有最大乘积6。代码......
  • 二维数组
    1.二维数组可以用行指针和列指针来表示行指针=数组指针;二维数组名就是第一行的首地址数组指针加1表示跳过整个指向的数组。 2.数组指针如何访问数组成员空间?p指向的是数组的地址,也就是&数组名,那么*p就是对取地址后的数组名再*操作,因为&与*为互逆操作,所以此时*p就等同于......
  • 树状数组模板
    namespaceBIT{ inttr[/*数据范围qwq*/],N; voidinit(intn){N=n;for(inti=1;i<=n;i++)tr[i]=0;} voidupdate(intx,inty){for(;x<=N;x+=(x&(-x)))tr[x]+=y;} intquery(intx){intres=0;for(;x;x-=(x&(-x......