leetcode 54. Spiral Matrix(螺旋矩阵)

【事件相机实战】噪声识别与智能滤波技术解析 本文深入解析了事件相机应用中关键的噪声识别与智能滤波技术。针对背景活动噪声、阈值波动噪声、热点噪声及运动边缘尾迹等核心噪声类型,文章剖析了其成因与特征,并详细介绍了从经典的时空相关性滤波、热点像素滤除到前沿的深度学习(如EDnCNN)等实战滤波方法,旨在帮助开发者在保证低延迟的前提下,有效提升事件流数据质量。 阅读详情

Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order.

Example 1:

Input:
[
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
]
Output: [1,2,3,6,9,8,7,4,5]

给一个二维数组,要求按照漩涡的顺序输出数组中的元素

漩涡的顺序就是从[0][0]开始往右,碰到右边界往下,转圈直到输出所有元素

思路:
就上面的例子,这里用i代表行,j代表列
漩涡的顺序:i=0,j=0,1,2, j到右边界,这时j不变,i++
j=2,i=1,2,i到下边界,这时i不变,j–
i=2,j=1,0,j到左边界,这时j不变,i–
j=0,i=1, i到上边界,j++

所以rule有四条:

  1. i=上边界时, j++,行的上边界++(只执行一次)
  2. j=右边界时,i++,列的右边界–(只执行一次)
  3. i=下边界时,j–,行的下边界–(只执行一次)
  4. j=左边界时,i–,列的左边界++(只执行一次)

简化为:
(1 ) i上边界时,
{ j从左到右loop,loop完后表示最上面一行的元素已经输出完,所以i的上边界++
j到最右边时,i从上到下loop,loop完表示最右边一列已经输出完,j的右边界–
}

(2) i下边界时
{ j从右到左loop,loop完后表示最后一行已经输出完,所以行的下边界–
j到最左边时,i从下到上loop,loop完表示最左边一列已经输出完,左边界++
}

(3) 直到上边界<=下边界 和 左边界 <= 右边界的条件不再成立

因为一次循环要处理(1)(2)两种情况,而处理完(1)后可能(3)不再满足,但是(3)只在循环完一次的时候才做判断,所以(2)的条件中还要加入(3)的判断

    public List<Integer> spiralOrder(int[][] matrix) {
        int rows = matrix.length;
        int cols = matrix[0].length;

        int r = 0;
        int c = 0;
        int minR = 0;
        int maxR = rows-1;
        int minC = 0;
        int maxC = cols-1;
        List<Integer> res = new ArrayList<>();

        while(minR <= maxR && minC <= maxC) {
            if(minR <= maxR && minC <= maxC && r == minR) {
                while(c <= maxC) {
                    res.add(matrix[r][c]);
                    c++;
                }
                //最后一个c++导致c = maxC+1
                c = maxC;
                minR ++;
                r = minR; //r更新到新的minR,不写会出现重复数字
                
                while(r <= maxR) {
                    res.add(matrix[r][c]);
                    r++;
                }
                r = maxR; //最后一个r++导致r=maxR+1
                maxC--;
                c = maxC; //c要更新到新的maxC上,不写这一步会出现重复数字
            }
            
            if(minR <= maxR && minC <= maxC && r == maxR) {
                while(c >= minC) {
                    res.add(matrix[r][c]);
                    c --;
                }
                c = minC;
                maxR--;
                r = maxR; //r更新到新的maxR,不写会出现重复数字
                while(r >= minR) {
                    res.add(matrix[r][c]);
                    r --;
                }
                r = minR;  //最后一个r--导致r=minR-1
                minC++;
                c = minC; //c要更新到新的minC上,不写这一步会出现重复数字
            }
        }
        return res;
    }
基于YOLO26深度学习框架的文档表格识别系统的算法研究实现方法 本文研究了基于YOLO26深度学习框架的文档表格识别系统实现方法。系统采用YOLO26网络架构,通过数据预处理、模型训练、检测推理和表格分析四个模块实现高效表格识别。研究详细阐述了数据归一化、增强等技术处理,以及采用迁移学习策略优化模型训练过程。实验表明,该系统能有效识别多种表格结构并生成结构化数据,为文档自动化处理提供了可靠解决方案。 阅读详情

相关推荐

【keras】走近VGG16卷积神经网络

        VGG16是一个16层的卷积神经网络模型,输入数据的维度为224*224*3,即长宽均为224像素的RGB彩色图片,VGG16模型的权重由ImageNet训练而来。由于其具有简单实用的优点,因此,在图像分类和目标检测任务中得到了较为广泛的应用。 1.卷积神经网络的基本概念 1.1卷积         简单的将其理解为一种数学运算,具体的计算过程如下图所示:       ...

XYZ 1万+

螺旋式排列数组

螺旋式排列数组

Ambitious3376的博客 1697

DMA学习笔记

DMA(direct memory access,直接内存访问),是一种避开CPU,可以直接对外设和内存进行访问的技术,可以实现外设与内存、内存之间、外设之间的数据的访问和搬移。

weixin_46220498的博客 3116

Javascript实现漩涡型二维数组案例

【代码】Javascript实现漩涡型二维数组案例。

superherooooss的博客 337

Hyper-V显卡直通实战:手把手解决Windows 11虚拟机错误码43(附完整参数配置)

本文详细解析了在Windows 11 Hyper-V虚拟机中配置显卡直通时遭遇错误码43的根源,并提供了从环境检查、核心PowerShell命令(如Set-VMGpuPartitionAdapter)配置到虚拟机内驱动替换的完整实战解决方案,帮助用户彻底解决显卡驱动无法加载的问题。

weixin_29238147的博客 905

ROS激光雷达动态避障算法优化(C++实战)

本文深入探讨了ROS激光雷达动态避障算法的C++实战优化。针对动态环境的核心挑战,文章系统性地介绍了从激光数据预处理(降噪、瘦身)、动态障碍物检测与跟踪,到基于动态窗口法(DWA)的智能决策与调优的全流程。重点分享了如何将障碍物速度预测融入DWA打分函数,以实现更安全、流畅的避障,并提供了工程架构、性能优化及真机调试的实用建议。

weixin_29192141的博客 948

splice删除数组中的指定的某些元素

splice删除我们常见的是如下,我们要删除addr数组中,包含属性a为空的元素 for(let i=0;i<==arrd.length-1;i++){ if(addr[i].a==''){ addr.splice(i, 1) } } 但是这样是不能删除数组中所有a属性为空的数组的,因为splice会改变原数组,会导致i的变化,所以我们可以使i一直等于数组的长度-1 for(let i<=arrd.length-1;i>=0;i--){ if(addr[i].a==''

LLL_liuhui的博客 4386

【研路导航】重庆大学计算机保研面试真题分享交流

在保研的道路上,面试是非常重要的一环。轻保研提供了成功保研到重庆大学的学长的计算机保研面试的部分真题及详细解答!Q 快速排序和合并排序:快速排序(quicksort) 和合并排序(merge sort) 两种方法都将输入的待排序序列划分为2个子序列,并且递归地对所得的两个子序列分别排序。请阐述快速排序及合并排序两种算法之间的主要区别。

gradlight的博客 1588

旋转数组总结篇

旋转数组总结篇

❀雾里看花花里看雾❀ 1045

Python爬取拼多多商品数据保姆级教程(附源码及效果图)

本文介绍了使用Python爬取拼多多商品数据的完整教程。通过DrissionPage库模拟浏览器操作,利用正则表达式提取嵌入在HTML中的商品数据(关键步骤是从window.rawData变量获取),解析后转换为结构化数据并导出Excel。教程包含八大步骤:环境配置、浏览器初始化、网络监听、搜索模拟、数据提取(核心是正则匹配JSON)、数据验证、字段解析和Excel导出,最后提供了封装好的函数可直接调用。该方法特别适合课程作业或毕业设计获取电商数据,能爬取商品名称、价格、销量等关键信息,处理了价格单位转换等

weixin_46449236的博客 2083

Matlab并行运算

今天搞了一下matlab的并行计算,效果好的出乎我的意料。 本来CPU就是双核,不过以前一直注重算法,没注意并行计算的问题。今天为了在8核的dell服务器上跑程序才专门看了一下。本身写的程序就很容易实现并行化,因为beamline之间并没有考虑相互作用。等于可以拆成n个线程并行,要是有550核的话,估计1ms就算完了。。。 先转下网上找到的资料。 一、Matlab并行计算原理梗概 Matl

wenyusuran的专栏 1万+

【JavaScript】涡旋型二维数组

【JavaScript】涡旋型二维数组

JackCao_Grass的博客 255

10.2 全栈 CRUD 工程结构搭建:Cursor 4 步初始化 + 3 层目录规范

揭示 Cursor 工程初始化中 4 个关键动作如何将 AI 上下文感知能力从 30% 提升至 85%,包括用 pnpm create 显式声明结构契约、通过 monorepo.config.json 设定 workspace 根以支持跨包类型引用、在 shared 包中固化共享类型与协议,以及后续

weixin_42545292的博客 69

Leetcode54:Spiral Matrix 螺旋矩阵

54:Spiral Matrix 螺旋矩阵 Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order. 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 Example 1: Input: [ ...

爱写Bug 387

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Leetcode 54:Spiral Matrix 螺旋矩阵

54:Spiral Matrix 螺旋矩阵Given a matrix ofmxnelements (mrows,ncolumns), return all...

爱写Bug 275

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Leetcode 54. Spiral Matrix 螺旋矩阵

Leetcode 54. Spiral Matrix 螺旋矩阵 标签: Leetcode 题目地址:https://leetcode-cn.com/problems/spiral-matrix/ 题目描述 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 示例 1: 输入: [ [ 1, 2, 3 ], [...

CoderWangSon 302

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

spiral matrix java,Leetcode 54:Spiral Matrix 螺旋矩阵

54:Spiral Matrix 螺旋矩阵Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order.给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。Example 1:Input:[[ 1, 2...

weixin_32620855的博客 289

Leetcode 54:Spiral Matrix 螺旋矩阵

54:Spiral Matrix 螺旋矩阵 Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order. 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 Example 1: Input: [ ...

weixin_34054866的博客 214

【leetcode】(python) 54. Spiral Matrix 螺旋矩阵

螺旋矩阵code 54. Spiral Matrix Medium 1166 424 Favorite Share Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order. Example 1: Input: [ [ 1, 2, 3 ], [ 4,...

。 366

LeetCode 54. Spiral Matrix(螺旋矩阵)

原题网址:https://leetcode.com/problems/spiral-matrix/ Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order. For example, Given the following mat

James Pan 810

Leetcode 54.螺旋矩阵(Spiral Matrix)

Leetcode 54.螺旋矩阵 1 题目描述(Leetcode题目链接)   给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 输入: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] 输出: [1,2,3,6,9,8,7,4,5] 输入: [ [1, 2, 3, 4], [5, 6, 7,...

qq_39378221的博客 264

leetcode-54. Spiral Matrix 螺旋矩阵

Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral order. Example 1: Input: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] Output: [1,2,3,6,9,...

别说话写代码的博客 291

LeetCode 54 Spiral Matrix(螺旋矩阵)(Array)(*)

翻译给定一个m∗nm * n的矩阵(m行 n列),以螺旋状返回矩阵中的所有元素。例如,给定以下矩阵[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ]你应该返回[1,2,3,6,9,8,7,4,5].原文Given a matrix of m x n elements (m rows, n columns), return all elements of

nomasp 4954

[leetcode]54. Spiral Matrix螺旋矩阵

Given a matrix ofmxnelements (mrows,ncolumns), return all elements of the matrix in spiral order. Example 1: Input: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] Output: [1,2,3,6,9,8,7...

weixin_30359021的博客 75

Leetcode: 54. Spiral Matrix 螺旋矩阵

Spiral Matrix 螺旋矩阵 给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。 输入: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] 输出: [1,2,3,6,9,8,7,4,5] 方法一:模拟螺旋遍历 用left,right,up,down记录 class Solution { p...

Coding 280

LeetCode54. Spiral Matrix(螺旋矩阵)

螺旋矩阵

grllery的博客 402
上一篇: leetcode 72. Edit Distance
下一篇: leetcode 58. Length of Last Word
蓝羽飞鸟
博客等级 码龄8年 1万+粉丝 727原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蓝羽飞鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值