随笔分类 -  二维数组

矩阵旋转90度
摘要:题目说明: 给定一个NxN的矩阵,和矩阵的阶数N,请返回旋转后(顺时针)的NxN矩阵,保证N小于等于500,矩阵元素小于等于256。 注意:不要使用缓存矩阵 输入 3 1 2 3 4 5 6 7 8 9 输出 7 4 1 8 5 2 9 6 3 拓展:逆时针旋转90度,返回旋转后的矩阵。 顺时针旋转 阅读全文

posted @ 2020-07-30 22:37 丁不煮 阅读(1141) 评论(0) 推荐(0)

矩阵乘积
摘要:题目说明: 已知两个矩阵a,b,求a*b 分析: 结果矩阵等于 a的每一行的元素,分别乘b的每一列的元素在相加; 前提:a的列=b的行 矩阵a2*2 1 2 1 -1 * 矩阵b2*3 1 2 -3 -1 1 2 结果矩阵C2*3 -1 4 1 2 1 -5 我的代码主要分为一下几个模块: 1.从键 阅读全文

posted @ 2020-07-30 19:22 丁不煮 阅读(315) 评论(0) 推荐(0)

【蓝桥杯】求子矩阵的最大累计和
摘要:给定一个矩阵matrix,其中的值有正,负,零,返回子矩阵的最大累加和, 例如matrix= { { -1, 5, -1 },💧 { -1, 2, 2 }, ☔ { -1, -1, -1 } 🌂 }; 返回8. 分析: 矩阵可以差分成数组,因为前面有做过求数组最大累计和的题。那么要怎么拆分呢? 阅读全文

posted @ 2020-07-29 18:55 丁不煮 阅读(275) 评论(0) 推荐(0)

【蓝桥杯】求子数组最大累积和
摘要:题目描述:给定一个数组arr,返回子数组的最大累计和。 例如arr=[1,-2,3,5,-2,6,-1],返回12.(因为子数组[3,5,-2,6]累积和最大。) 拓展:试求出累计和最大的子数组 分析: 思路1:使用双指针,暴力破解,逐个累积求和。 1 private static void sol 阅读全文

posted @ 2020-07-27 19:18 丁不煮 阅读(282) 评论(0) 推荐(0)

【蓝桥杯】找出边界为1的最大子方阵
摘要:题目说明: 给定一个N*N的矩阵matrix,在这个矩阵里,只有0和1的两种值,返回边框全是1的最大正方形的边长长度。 示例: 1 1 1 1 1 0 1 0 1 1 1 1 0 1 0 1 输出 :3 因为 1 1 1 1 1 1 1 1 分析:(枚举,遍历所有可能性) 1.最大正方形,一定是从N 阅读全文

posted @ 2020-07-27 12:02 丁不煮 阅读(327) 评论(0) 推荐(0)

【蓝桥杯】Z形打印二维数组
摘要:题目描述: 示例: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 输出: 1 2 5 9 6 3 4 7 10 13 14 11 8 12 15 16 分析: 看作是在走斜线,从做向右走(上坡)和从右向左走(下坡)。 边界处理: 如果是从左向右走l2r=true,走上 阅读全文

posted @ 2020-07-22 21:40 丁不煮 阅读(446) 评论(0) 推荐(0)

【蓝桥杯】 将0所在的行和列全置为0
摘要:题目描述 1 2 3 4 5 6 0 8 9 0 11 12 13 14 15 16 结果输出: 1 0 0 4 0 0 0 0 0 0 0 0 13 0 0 16 分析:设置辅助数组记录出现0的行和列。 接下来遍历原数组,将辅助数组中等于1 的row和col记做0。 1 public class 阅读全文

posted @ 2020-07-21 18:33 丁不煮 阅读(281) 评论(0) 推荐(0)

【蓝桥杯】顺时针打印二维数组
摘要:题目说明: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 题目输出: 1 2 3 4 8 12 16 15 14 13 9 5 6 7 11 10 分析: 顺时针打印,可以理解为一圈一圈打印数组。可以从外圈先入手,最后在用循环控制其他圈。 每一圈分为上下左右四个边,变 阅读全文

posted @ 2020-07-21 17:10 丁不煮 阅读(835) 评论(0) 推荐(0)

导航