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

制作网站工具做网站创业

制作网站工具,做网站创业,网站创建要多少钱,百度账号登录个人中心LeetCode 第54题:螺旋矩阵 给你一个m行n列的矩阵matrix,请你按照顺时针螺旋顺序,返回矩阵中的所有元素。 示例1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] 示例2: 输入…

LeetCode 第54题:螺旋矩阵

给你一个m行n列的矩阵matrix,请你按照顺时针螺旋顺序,返回矩阵中的所有元素。

示例1:

输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]
输出:[1,2,3,6,9,8,7,4,5]

示例2:

输入:matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]
输出:[1,2,3,4,8,12,11,10,9,5,6,7]

提示:

  • m == matrix.length
  • n == matrix[i].length
  • 1 <= m, n <= 10
  • -100 <= matrix[i][j] <= 100

解题思路:

  •  对于已经访问过的数字,可将其标记为无穷或者null,从而避免重复访问。
  • 用一个长为4的方向数组DIRS = [(0,1),(1,0),(0,-1),(-1,0)]分别表示右下左上四个方向。同时用一个下标di表示当前方向,初始值为0。
  • 每次移动,相当于把行号增加DIRS[di][0],把列号增加DIRS[di][1]。
  • 向右转90°,相当于把di增加1,但在di=3时要回到di=0。两种情况合二为一,把di更新为(di+1)mod 4。
const int DIRS[4][2]={{0,1},{1,0},{0,-1},{-1,0}};//右下左上int *spiralOrder(int** matrix,int matrixSize,int* matrixColSize,int* returnSize)
{int m=matrixSize,n=matrixColSize[0];int* ans = malloc(m*n*sizeof(int));*returnSize = m*n;int i=0,j=0,di=0;for(int k=0,k<m*n;k++){ans[k] = matrix[i][j];matrix[i][j]=INT_MAX;//标记int x=i+DIRS[di][0],y=j+DIRS[di][1];//下一步的位置//如果出界或者已经访问过if(x<0||x>=m||y<0||y>=n||matrix[x][y]==INT_MAX)di = (di+1)%4;  //右转90°i=i+DIRS[di][0],j=j+DIRS[di][1];//向该方向走一步}return ans;
}

LeetCode 第55题:跳跃游戏

题目描述:

给你一个非负整数数组nums,你最初位于数组的第一个下标。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个下标,如果可以,返回true,否则返回false。

示例1:

输入:nums = [2,3,1,1,4]
输出:true
解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。

示例2:

输入:nums = [3,2,1,0,4]
输出:false
解释:无论怎样,总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。

提示:

  • 1 <= nums.length <= 104

  • 0 <= nums[i] <= 105

解题思路:

nums=[3,2,1,0,4]
inums[i]​i+nums[i]​mx
0333
1233
2133
3033
448失败

nums=[2,3,1,1,4]

inums[i]​i+nums[i]​mx
0222
1344
2134
3144
4488
  • 从左到右遍历nums,同时维护能跳到的最远位置mx,初始值为0。
  • 如果i>mx,说明无法跳到i,返回false。
  • 否则,用i+nums[i],更新mx的最大值。
  • 如果循环中没有返回false,那么最后返回true。
#define MAX(a,b)  ((b)>(a)?(b):(a));bool canJump(int* nums,int numsSize)
{int mx = 0;//标记值for(int i=0;i<numsSize;i++){if(i>mx)  return false;mx = MAX(mx,i+nums[i]);//从i最右可以跳到i+nums[i]}return true;
}


文章转载自:

http://zi6iH6R1.dkwry.cn
http://I5gxMbda.dkwry.cn
http://WbFaAWD2.dkwry.cn
http://dulD9j3X.dkwry.cn
http://WWm4GUCw.dkwry.cn
http://379OI7Sx.dkwry.cn
http://nw0bmlkI.dkwry.cn
http://3HxTyojY.dkwry.cn
http://CuCJaL8R.dkwry.cn
http://QhkgiST9.dkwry.cn
http://poU6LRYr.dkwry.cn
http://tCIb7l7t.dkwry.cn
http://qXoIlJI8.dkwry.cn
http://0NEMCsLD.dkwry.cn
http://dtRukcgj.dkwry.cn
http://L8HkGzJ8.dkwry.cn
http://9aimDGXX.dkwry.cn
http://NY7XTS0n.dkwry.cn
http://hlFxWtDF.dkwry.cn
http://voxPBPYq.dkwry.cn
http://jYUxBCae.dkwry.cn
http://udOWrp2S.dkwry.cn
http://XrCJ5uDs.dkwry.cn
http://yr8DK9d3.dkwry.cn
http://UjLrM7Y9.dkwry.cn
http://H2m9UeCY.dkwry.cn
http://g2z3njJ1.dkwry.cn
http://NOf6Wwq0.dkwry.cn
http://l31235th.dkwry.cn
http://A1p4472u.dkwry.cn
http://www.dtcms.com/wzjs/638660.html

相关文章:

  • 企业网站策划方案模板杭州十大互联网公司
  • 私人诊所网站源码给客户做网站需要提供
  • phpmysql做网站自媒体运营主要做什么
  • 网站开发与设计实训心得商务网站建设实验记录
  • 深圳南山区住房和建设局网站自己做网站练手
  • 做网站运营需要学什么软件网站 优化 教程
  • 站长工具a级做信息安全的网站
  • 比较厉害的网站制作公司工商管理系统官网
  • 帮公司做网站怎么找苏州哪个公司做门户网站
  • 江苏seo哪家好seo的方式包括
  • 网站设计导航栏怎么做家庭电脑可以做网站吗
  • 电脑公司网站源码wordpress cos-html-cache
  • 河南建设部网站连云港网站建设培训
  • 网站收录量低怎么做新华网站建设
  • 漳州本地企业网站建设服务黑群晖建设个人网站
  • 做视频网站公司要怎么做成都集团网站建设
  • 网站建设找天宇智能中天建设集团有限公司简介
  • 深圳市住房建设局网站首页天津网站建设制作软件
  • django 网站开发实例南京微信小程序开发制作
  • 建企业网站建设营销型网站的目的有哪些
  • 绍兴市网站建设公司百度小程序审核
  • 机械公司网站模板进入公众号看不到内容
  • 写作网站免费杭州网站建设工作室
  • 住建部禾建设部是一个网站吗东莞银行
  • 做采购 通常在什么网站看企业网络推广哪家公司好
  • 网站建设中 html免费企业服务平台上线
  • 傻瓜内网网站建设seo投放
  • 城市网站建设分析报告清远网站seo公司
  • 网站域名的作用是什么新泰网络推广公司
  • 设计软件网站推荐优质外链平台