目录1 73.矩阵置零2 54.螺旋矩阵3 48.旋转图像4 240.搜索二维矩阵II菜鸟做题第二周,语言是C++1 73.矩阵置零解题思路:遍历矩阵,寻找等于0的元素,记录对应的行和列将被记录的行的元素全部置0将被记录的列的元素全部置0classSolution{public:voidsetZeroes(vector>&matrix){intn=matrix.size(),m=matrix[0].size();unordered_setrow,col;//寻找0for(inti=0;i2 54.螺旋矩阵解题思路:定义right,down,left,up来标志四个方向根据不同的方向设置不同的坐
240.搜索二维矩阵Ⅱ编写一个高效的算法来搜索*m*x*n*矩阵matrix中的一个目标值target。该矩阵具有以下特性:每行的元素从左到右升序排列。每列的元素从上到下升序排列。示例1:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]],target=5输出:true示例2:输入:matrix=[[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24],[18,21,23,26,30]],target=20输出
第1题解析思路:两个循环进行控制外层循环控制打印多少行内部循环控制每行打印多少个表达式以及表达式内容,比较简单,具体参考代码#includeintmain(){ inti=0; //控制行数 for(i=1;i9;i++) { //打印每一行内容,每行有i个表达式 intj=0; for(j=1;ji;j++) { printf("%d*%d=%2d",i,j,i*j); } printf("\n"); } return0;}第2题解析思路:采用循环的方式输入一个数组使用max标记数组中的最大值,采用循环的方式依次获取数组中的每个元素,与max进行比较,如果arr[i]大于ma