【刷题(2)】矩阵

一、矩阵问题基础

遍历:
for i in range(len(matrix[0])):
for j in range(len(matrix):
while
倒序遍历:
for i in range(right,left,-1)
临时存储:temp
w,h:len(matrix[0])-1 len(matrix)-1
left,right,top,bottom:0 len(matrix[0])-1 0 len(matrix)-1
索引:
width = len(matrix[0])
height=height_2=len(matrix)
w=width-1
h=height-1

二、旋转图像

1 题目

在这里插入图片描述

2 解题思路

(1)先对角翻转,对角反转需要注意什么?
在这里插入图片描述

(2)再上下翻转
在这里插入图片描述

3 code

class Solution(object):def rotate(self, matrix):width = len(matrix[0])height=height_2=len(matrix)w=width-1h=height-1# 对角翻转for i in range(width):for j in range(height):temp = matrix[i][j]matrix[i][j]=matrix[h-j][w-i]matrix[h-j][w-i]=tempheight=height-1# 上下翻转for j in range(int(math.floor(height_2/2))):temp=matrix[j]matrix[j]=matrix[h-j]matrix[h-j]=tempreturn matrix

三、螺旋矩阵

1 题目

在这里插入图片描述

2 解题思路

3 code

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Unity Navigation 入门(新版)

概述 在游戏的制作过程中,寻路功能一定是非常重要的部分,他可以为主角寻路,也可以运用到敌人追击等,相比于自己实现的难度,使用寻路组件就显得简单的多,那接下来就开始学习这部分的内容吧 1.安装AI Naviga…

无规律快速批量重命名文件(夹)-固定命名

首先,需要用到的这个工具: 度娘网盘 提取码:qwu2 蓝奏云 提取码:2r1z 这里有1万多个文件,要命名成无规律的、不同的文件名 目标文件名里面的是上面已经修正数据的目标 一句话思路:提取全部目标名称&…

2025考研政治徐涛核心考案基础+强化班视频课程,百度网盘PDF资源

大家好,今天给大家带来的是徐涛强化课笔记。 25徐涛课程:徐涛2025网盘资源课 使用建议: ①看课的时候辅助使用。不用在看课时点暂停做笔记,只需要简单的补充一点在书上即可,后期也可以当知识手册背诵。 ②二战的同…

数据结构十:哈希表

本次将从概念上理解什么是哈希表,理论知识较多,满满干货,这也是面试笔试的一个重点区域。 目录 一、什么是哈希表 1.0 为什么会有哈希表? 1.1 哈希表的基本概念 1.2 基本思想 1.3 举例理解 1.4 存在的问题 1.5 总结 二、…

基于EBAZ4205矿板的图像处理:12图像二值化(阈值可调)

基于EBAZ4205矿板的图像处理:12图像二值化(阈值可调) 先看效果 板卡拿回寝室了,明天晚上再补充实际运行效果 我的项目是可以通过按键调整二值化的阈值的,key1为阈值加1,key2为阈值减1,key3为阈值加10,ke…

自动驾驶融合定位系列教程四:惯性导航解算

自动驾驶融合定位系列教程四:惯性导航解算 一、概述 惯性导航的解算是一个实现起来非常简单,但是理解起来要费一番功夫的东西,所谓“实现”就是把公式变成代码,所谓“理解”,就是要弄明白几个公式是怎么推导出来的。…

LeetCode 142.环形链表Ⅱ

题目描述 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内…

毕设:邮件分发系统

文章目录 前言一、登录1.邮箱登录2.账号登录 二、注册三、首页四、写邮件五、收邮件六、草稿箱七、垃圾箱八、已发送九、通讯录十、用户管理十一、邮件管理十二、登录日志总结 前言 分享一下邮件分发系统 一、登录 1.邮箱登录 2.账号登录 二、注册 三、首页 首页有邮件信息&…

让.NET 8 支持 Windows Vista RTM

众所周知,从 Windows 的每次更新又会新增大量 API,这使得兼容不同版本的 Windows 需要花费很大精力。导致现在大量开源项目已经不再兼容一些早期的 Windows 版本,比如 .NET 8 AOT编译命令行程序时生成的EXE,依赖以下三个函数&…

流畅的python-学习笔记_数据结构

概念 抽象基类:ABC, Abstract Base Class 序列 内置序列类型 分类 可分为容器类型和扁平类型 容器类型有list, tuple, collections.deque等,存储元素类型可不同,存储的元素也是内容的引用而非内容实际占用内存 …

Raft共识算法笔记,MIT6.824,

处理leader和follow的一个重要思路是多数投票,确保系统中存在奇数个服务器(例如3台)。进行任何操作都需要来自多数服务器的同意,例如3台服务器中的2台。如果没有多数同意,系统会等待。为什么多数投票有助于避免脑裂问题…

9.4.k8s的控制器资源(job控制器,cronjob控制器)

目录 一、job控制器 二、cronjob控制器 一、job控制器 job控制器就是一次性任务的pod控制器,pod完成作业后不会重启,其重启策略是:Never; 简单案例 启动一个pod,执行完成一个事件,然后pod关闭;…

MATLAB实现图像平滑处理

在MATLAB中,实现图像平滑处理通常可以通过应用滤波器来完成,如平均滤波器、高斯滤波器或中值滤波器。 MATLAB代码如下: clc;close all;clear all;warning off;%清除变量 rand(seed, 100); randn(seed, 100); format long g;% 读取图像 originalImage i…

Conntroller内存马详解(3)

内存马 package com.naihe.controller;import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotati…

CMakeLists.txt语法规则:提供信息的变量说明一

一. 简介 前面几篇文章学习了 CMakeLists.txt语法中 部分常用命令。 接下来学习CMakeLists.txt语法中部分常用变量,变量也是 cmake 中的一个重头戏,cmake 提供了很多内置变量。每一个变量都有它自己的含义,可以通过如下链接地址查询到所有…

生产者与消费者 PV操作

文章目录 普通方式 wait 与 notifyAll消费者生产者桌子测试类运行结果 阻塞队列 普通方式 wait 与 notifyAll 消费者 package abc;public class Customer extends Thread{Overridepublic void run() {while (true) {synchronized (Desk.lock) {//判断顾客是否吃到上限数量了if…

解决Eclipse导入项目后右键Run as无存在的服务器(显示Run Configuration)可用

一、遇到的问题 在eclipse中导入别人的项目时,修改了上篇的jdk和tomcat等环境之后,运行项目时,出现无存在的服务器可用的错误 二、原因 是因为Web module的版本太高了,我们从下面几个方面修改: 1、在项目上右键&…

libcity笔记:参数设置与参数优先级

1 参数优先级 高优先级的参数会覆盖低优先级的同名参数 Libcity中的优先级顺序维: 命令行参数(命令行python run_model.py时导入的) > 用户定义配置文件(命令行python run_model.py时由config_file导入的) >…

双向冒泡法,可以只求最大最小值

int BiBubbleSort(int Arr[],int n,int maxnum){int left0,rightn-1;int i;bool notDone true;int temp;if(n<2)return -1;while(left<right&&notDone){ notDone false; //设置未发生交换标志 for(ileft;i<right;i){if(Arr[i]>Arr[i1]){//swap(Arr[…

基于若依框架搭建网站的开发日志(一):若依框架搭建、启动、部署

RuoYi&#xff08;基于SpringBoot开发的轻量级Java快速开发框架&#xff09; 链接&#xff1a;开源地址 若依是一款开源的基于VueSpringCloud的微服务后台管理系统&#xff08;也有SpringBoot版本&#xff09;&#xff0c;集成了用户管理、权限管理、定时任务、前端表单生成等…