1260. 二维网格迁移

1260. 二维网格迁移

  • 原题链接:
  • 完成情况:
  • 解题思路:
  • 参考代码:
  • 错误经验吸取

原题链接:

1260. 二维网格迁移

https://leetcode.cn/problems/shift-2d-grid/description/

完成情况:

在这里插入图片描述

解题思路:

这段代码实现了一个矩阵平移的功能。首先获取了矩阵的行数和列数,然后创建一个与原始矩阵相同大小的二维列表用于存储平移后的结果。接着对原始矩阵进行遍历,计算新位置的索引并将原始矩阵中的元素放入新位置。最后返回平移后的结果列表。

参考代码:

package leetcode板块;import java.util.ArrayList;
import java.util.List;public class _1260二维网格迁移 {/*** 将 grid[][] 迁移 k 次。* 每次「迁移」操作将会引发下述活动:* 位于 grid[i][j] 的元素将会移动到 grid[i][j + 1]。* 位于 grid[i][n - 1] 的元素将会移动到 grid[i + 1][0]。* 位于 grid[m - 1][n - 1] 的元素将会移动到 grid[0][0]。** 即,每个位置均向右移* m == grid.length* n == grid[i].length* 1 <= m <= 50* 1 <= n <= 50* -1000 <= grid[i][j] <= 1000** 可以 构造一个一维数组用于去模拟整个循环的过程* 然后按照数组的每行每列数量,再返回对应个数到每一行中** 请你返回 k 次迁移操作后最终得到的 二维网格。* @param grid* @param k* @return*/public List<List<Integer>> shiftGrid(int[][] grid, int k) {//二维转一维,记录行列数即可。int row = grid.length,col = grid[0].length;List<List<Integer>> result = new ArrayList<List<Integer>>();//先构造有col个大小为row的List<Integer>类for (int i = 0; i < row; i++) {List<Integer> r = new ArrayList<>();for (int j = 0;j < col;j++){r.add(0);}result.add(r);}//计算去每个元素需要移动到的位置,然后对应位置将值赋进去for (int i = 0;i<row;i++){for (int j = 0;j<col;j++){//获取需要移动的位置的个数int moveStep = (i * col + j + k) % (row * col);//然后给每个指定List<List<Integer>>位置上的对象,赋予[][] grid的值result.get(moveStep / col).set(moveStep % col , grid[i][j]);}}return result;}
}

错误经验吸取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/819110.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用稳压管和三极管射极输出器电路驱动PMOS

当电源电压大于PMOS 管的最大栅源电源时&#xff0c;不能直接把栅极拉到地&#xff0c;需要一点特殊的电路来限制栅极驱动电压。有的地方是用电阻分压器做的&#xff0c;比如这种&#xff1a; NPN 三极管导通时&#xff0c;MOS 管栅极电压是两个电阻中间的电压。这种设计最大的…

106.从中序与后序遍历构造二叉树

给定两个整数数组 inorder 和 postorder &#xff0c;其中 inorder 是二叉树的中序遍历&#xff0c; postorder 是同一棵树的后序遍历&#xff0c;请你构造并返回这颗 二叉树 。 思路&#xff1a; 中序遍历数组中&#xff0c;找到一个根节点&#xff0c;那么其前为其左子树&a…

(delphi11最新学习资料) Object Pascal 学习笔记---第9章第6节(嵌套异常和 InnerException机制)

9.6 异常的高级功能 ​ 除非你对这门语言已经有了很好的了解&#xff0c;否则第一次阅读这部分内容时最好跳过。在此之前&#xff0c;你可以先阅读下一章&#xff0c;将来再回到这一部分。 ​ 在本章的最后一部分&#xff0c;我将介绍一些与异常处理相关的高级主题。我将介绍…

嵌入式学习——Linux基础——day1

1. linux基础命令 1.1 ls 查看当前目录下的所有文件 ls -l 查看文件的详细信息 ls -a 查看当前目录下的所有文件&#xff08;包含隐藏文件&#xff09; 1.2 touch 创建一个空的普通文件 1.3 rm 删除一个普通文件 rm -rf 删除非…

大模型用到的位置编码汇总(面试)

不同于RNN、CNN等模型&#xff0c;对于Transformer模型来说&#xff0c;位置编码的加入是必不可少的&#xff0c;因为纯粹的Attention模块是无法捕捉输入顺序的&#xff0c;即无法区分不同位置的Token。为此我们大体有两个选择&#xff1a;想办法将位置信息融入到输入中&#x…

用odin实现的资源复制编辑器

用odin实现了一个资源复制编辑器&#xff0c;使用要安装odin&#xff0c;功能是把要复制的资源路径一个个添加设置&#xff0c;点copy能把列表里的资源全部复制&#xff0c;支持目录复制到目录&#xff0c;文件复制到目录&#xff0c;文件复制替换。提升效率&#xff0c;让自己…

Office 365卡顿怎么办?SD-WAN可以解决

随着数字化浪潮的推进&#xff0c;Office 365等云办公应用已成为企业日常运营不可或缺的工具。然而&#xff0c;许多企业在使用Office 365时遭遇了网络卡顿的难题&#xff0c;给工作人员带来诸多不便。随着SD-WAN技术的成熟和普及&#xff0c;这一难题得到了有效的解决。 Offic…

使用JWT、Redis + token实现用户登录的两种方式。

使用JWT实现登录功能 功能实现流程&#xff1a; 1.用户发起登录请求。 2.使用JwtBuilder生成令牌并返回。 3.写一个拦截器&#xff0c;拦截初登录之外的请求。拦截到请求后解析令牌&#xff0c;若正常放行&#xff0c;并将当前用户id存在当前线程。若出异常则返回登陆失败。…

四足机器人应用篇之solidwork导出URDF

欢迎关注微信公众号 “四足机器人研习社”&#xff0c;本公众号的文章和资料和四足机器人相关&#xff0c;包括行业的经典教材、行业资料手册&#xff0c;同时会涉及到职业知识学习及思考、行业发展、学习方法等一些方面的文章。 |1.URDF介绍 一个URDF pakage示例 urdf是ROS用于…

ABAP MESSAGE 常用的类型

类型文本描述A终止处理终止&#xff0c;用户必须重启事务X退出与消息类型A 类似&#xff0c;但带有程序崩溃 MESSAGE_TYPE_XE错误处理受到干扰&#xff0c;用户必须修正输入条目,左下角提示!W警告处理受到干扰&#xff0c;用户可以修正输入条目,左下角提示!I信息处理受到干扰&a…

数据库讲解---(数据更新、视图、数据控制)【MySQL版本】

目录 前言 一.数据更新 1.1插入数据 1.1.1插入单个元组 1.1.2将一个新学生记录(学号:091530,姓名:夏雨,性别:男,籍:海南,出生年份:1999,学院:计算机)插入到学生表中 1.1.3插入子查询结果 1.1.4有一个表“DEPT”(SDEPT CHAR(20),AVG_AGE SMALLINT)表示每个学院的学生的平…

习题4-1 求奇数和

本题要求计算给定的一系列正整数中奇数的和。 输入格式: 输入在一行中给出一系列正整数&#xff0c;其间以空格分隔。当读到零或负整数时&#xff0c;表示输入结束&#xff0c;该数字不要处理。 输出格式: 在一行中输出正整数序列中奇数的和。 输入样例: 8 7 4 3 70 5 6 …

R 格式(蓝桥杯)

文章目录 R 格式【问题描述】高精度乘法高精度加法 R 格式 【问题描述】 小蓝最近在研究一种浮点数的表示方法&#xff1a;R 格式。对于一个大于 0 的浮点数 d&#xff0c;可以用 R 格式的整数来表示。给定一个转换参数 n&#xff0c;将浮点数转换为 R格式整数的做法是&#…

网络安全-自学笔记

一、自学网络安全学习的误区和陷阱 1.不要试图先成为一名程序员&#xff08;以编程为基础的学习&#xff09;再开始学习 我在之前的回答中&#xff0c;我都一再强调不要以编程为基础再开始学习网络安全&#xff0c;一般来说&#xff0c;学习编程不但学习周期长&#xff0c;而…

【力扣TOP100热题图解】T1.两数之和

题目链接点这里—— 力扣&#xff08;LeetCode&#xff09;​​​​​​ 法一&#xff1a;暴力枚举 最容易想到的方法是枚举数组中的每一个数 x&#xff0c;寻找数组中是否存在 target - x。 当我们使用遍历整个数组的方式寻找 target - x 时&#xff0c;需要注意到每一个位…

【Linux】磁盘管理和文件系统

目录 一、硬盘 1.硬盘结构 2.结构类型 二、MBR与磁盘分区 1.MBR主引导记录 2.磁盘分区结构 三、文件系统类型 四、linux系统添加并使用新硬盘的步骤 1.添加新的硬盘 2.刷新识别 3.进行分区 4.格式化&#xff0c;创建文件系统 5.挂载使用 一、硬盘 1.硬盘结构…

SpringBoot整合消息中间件(ActiveMQ,RabbitMQ,RocketMQ,Kafka)

消息中间件 消息消息队列JMS AMQPMQTTKafka Spring整合消息队列模拟消息队列的工作流程Spring整合ActiveMQSpring整合RabbitMQ直连交换机模式主题交换机模式 Spring整合RocketMQSpring整合kafka 消息 消息的发送方&#xff1a;生产者 消息的接收方&#xff1a;消费者 同步消息…

基于SSM项目高校在线请假与审批系统

采用技术 基于SpringBoot框架实现的web的智慧社区系统的设计与实现~ 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringMVCMyBatis 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 简介 本系统实现了管理员&#xff0c;教师&#xff0c;学生三个模…

OSPF动态路由实验(华为)

思科设备参考&#xff1a;OSPF动态路由实验&#xff08;思科&#xff09; 一&#xff0c;技术简介 OSPF&#xff08;Open Shortest Path First&#xff09;是一种内部网关协议&#xff0c;主要用于在单一自治系统内决策路由。它是一种基于链路状态的路由协议&#xff0c;通过…

探秘ChatGPT:写作论文的新奇技巧

ChatGPT无限次数:点击直达 探秘ChatGPT&#xff1a;写作论文的新奇技巧 近年来&#xff0c;随着人工智能技术的发展&#xff0c;ChatGPT作为一种强大的自然语言处理工具越来越受到关注。在学术界和工业界&#xff0c;人们开始探索如何利用ChatGPT这样的模型来辅助写作&#xf…