当前位置: 首页 > wzjs >正文

做游戏试玩网站优化推广排名网站教程

做游戏试玩网站,优化推广排名网站教程,ps做图游戏下载网站有哪些,新闻标题做的好的网站1.旋转矩阵 题目链接 想了那么久的各种旋转,对角线,其实把问题搞复杂了。 旋转90度的本质无非就是转置镜像对称 转置是什么?:将矩阵的行和列互换。 镜像对称:把矩阵从中间对折,互换位置 矩阵 A A [ 1 3 0…

1.旋转矩阵

题目链接

想了那么久的各种旋转,对角线,其实把问题搞复杂了。

  • 旋转90度的本质无非就是转置+镜像对称
    转置是什么?:将矩阵的行和列互换。
    镜像对称:把矩阵从中间对折,互换位置

矩阵 A

A = [ 1 3 0 2 4 6 ] A = \begin{bmatrix} 1 & 3 & 0 \\ 2 & 4 & 6 \\ \end{bmatrix} A=[123406]

转置后 Aᵀ

A ⊤ = [ 1 2 3 4 0 6 ] A^\top = \begin{bmatrix} 1 & 2 \\ 3 & 4 \\ 0 & 6 \\ \end{bmatrix} A= 130246

class Solution {
public:void rotate(vector<vector<int>>& matrix) {int n=matrix.size();//矩阵的长for(int i=0;i<n;i++)for(int j=i;j<n;j++)swap(matrix[i][j],matrix[j][i]);//转置for(int i=0;i<n;i++)for(int j=0;j<n/2;j++)swap(matrix[i][j],matrix[i][n-j-1]);//镜像对称}
};

Python

class Solution(object):def rotate(self, matrix):""":type matrix: List[List[int]]:rtype: None Do not return anything, modify matrix in-place instead."""n=len(matrix)for i in range(n):#0,n-1for j in range(i,n):#i,n-1matrix[i][j], matrix[j][i] = matrix[j][i], matrix[i][j]  # 直接交换for i in range(n):for j in range(n//2):matrix[i][j], matrix[i][n - j - 1] = matrix[i][n - j - 1], matrix[i][j]

2.零矩阵

题目链接

思路:遍历找出0元素所在行和列的位置,把位置标记出来。
第二次遍历数组,行或列有一个被标记,就把该位置置为0

注意:int flag_row[row]={};错误
row 和 col 虽然是变量,但它们的值是在运行时确定的(比如从 matrix.size() 和 matrix[0].size() 获取),而不是在编译时确定的常量。
在标准 C++ 中,数组的大小必须是编译时常量(比如 constexpr 或 #define 定义的常量)

class Solution {
public:void setZeroes(vector<vector<int>>& matrix) {int row=matrix.size();//行int col=matrix[0].size();//列// int flag_row[row]={};// int flag_col[col]={};std::vector<int> flag_row(row, 0);  // 初始化为全 0std::vector<int> flag_col(col, 0);  // 初始化为全 0for(int i=0;i<row;i++){for(int j=0;j<col;j++){if(matrix[i][j]==0){flag_row[i]=1;flag_col[j]=1;}}}//置为0for(int i=0;i<row;i++){for(int j=0;j<col;j++){if(flag_row[i]||flag_col[j])matrix[i][j]=0;}}}
};

Python版本

class Solution:def setZeroes(self, matrix: List[List[int]]) -> None:"""Do not return anything, modify matrix in-place instead."""row=len(matrix)col=len(matrix[0])flag_row=[0]*rowflag_col=[0]*colfor i in range(row):for j in range(col):if matrix[i][j]==0:flag_row[i]=1flag_col[j]=1for i in range(row):for j in range(col):if flag_row[i]  or flag_col[j]:matrix[i][j]=0
http://www.dtcms.com/wzjs/237845.html

相关文章:

  • 网站建设线上线下双服务器怎么制作自己的个人网站
  • 中山手机网站制作多少钱网站百度权重
  • 湖北专业网站制作公司如何在网上推广自己
  • 免费做长图的网站自媒体营销的策略和方法
  • 制作网站不给源代码关键词推广操作
  • 有什么网站是帮别人做设计的经典营销案例100例
  • 网站改版换域名seo在线优化平台
  • 上海建设集团有限公司电脑优化软件推荐
  • 360元网站建设 网络服务宁波seo网络推广定制多少钱
  • 云南省政府网站建设网络推广方案书模板
  • 单位网站建设必要性软文范例大全1000字
  • 网站单个页面深圳百度竞价托管公司
  • 分析对手网站北京seo管理
  • 学做网站需要文化嘛怎么进行网站关键词优化
  • 网站建设奕网情深比较靠谱的网站
  • 做网站需要会什么语言交换友情链接的途径有哪些
  • 网站建设和管理是教什么seo网站分析
  • 盐城北京网站建设品牌设计公司
  • 免费软件网站建设海外seo
  • 宝塔面板上传自己做的网站中国网站排名
  • 上传网站页面打不开怎么办网站seo在线诊断
  • 宁阳网站设计seo学徒是做什么
  • 贵阳手机网站开发广州新闻热点事件
  • 我想买个空间自己做网站站长素材免费下载
  • 上海网站建设网页制作怎么样站长工具seo综合查询可以访问
  • 注册网站的好处会计培训班推荐
  • 广州哪里有做网站电视剧百度风云榜
  • 北京免费网站制作域名权重查询
  • 专业网站设计工作室广告软文范例
  • 国内可以做的国外兼职网站合肥百度推广公司哪家好