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

nba最新排名表seo整体优化步骤怎么写

nba最新排名表,seo整体优化步骤怎么写,wordpress自适应文章主题,互联网时代文章目录 矩阵Solution73. 矩阵置零Solution54. 螺旋矩阵Solution48. 旋转图像Solution240. 搜索二维矩阵 II二叉树二叉树的四种遍历结果Solution94. 二叉树的中序遍历Solution104. 二叉树的最大深度Solution226. 翻转二叉树Solution101. 对称二叉树Solution543. 二叉树的直径S…

文章目录

  • 矩阵
    • Solution73. 矩阵置零
    • Solution54. 螺旋矩阵
    • Solution48. 旋转图像
    • Solution240. 搜索二维矩阵 II
  • 二叉树
    • 二叉树的四种遍历结果
    • Solution94. 二叉树的中序遍历
    • Solution104. 二叉树的最大深度
    • Solution226. 翻转二叉树
    • Solution101. 对称二叉树
    • Solution543. 二叉树的直径
    • Solution102. 二叉树的层序遍历
    • Solution108. 将有序数组转换为二叉搜索树
    • Solution98. 验证二叉搜索树
    • Solution230. 二叉搜索树中第 K 小的元素
    • Solution199. 二叉树的右视图
    • Solution114. 二叉树展开为链表
    • Solution105. 从前序与中序遍历序列构造二叉树
    • Solution437. 路径总和 III
    • Solution236. 二叉树的最近公共祖先

矩阵

Solution73. 矩阵置零

在这里插入图片描述

代码思路说明:假如矩阵是{1, 2, 3},{4, 0, 6},{7, 8, 9}第一次遍历矩阵,得到两个数组:zeroRows = [false, true, false],这个zeroRows记录需要置零的行,第二行需要置零zeroCols = [false, true, false],这个zeroCols记录需要置零的列,第二列需要置零第二次遍历矩阵,如果某个元素所在的行或列被标记为需要置零,则将该元素置为零;如元素4所在的行被标记为需要置零,则将该元素置为零
public class Solution {public static void setZeroes(int[][] matrix) {int m = matrix.length; // 矩阵的行数int n = matrix[0].length; // 矩阵的列数// 第一遍遍历,记录需要置零的行和列boolean[] zeroRows = new boolean[m]; // 记录需要置零的行boolean[] zeroCols = new boolean[n]; // 记录需要置零的列for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {if (matrix[i][j] == 0) {zeroRows[i] = true;zeroCols[j] = true;}}}// 第二遍遍历,根据记录的结果将对应行和列置为零for (int i = 0; i < m; i++) {for (int j = 0; j < n; j++) {if (zeroRows[i] || zeroCols[j]) {matrix[i][j] = 0;}}}}// 测试函数public static void main(String[] args) {int[][] matrix = {{1, 2, 3},{4, 0, 6},{7, 8, 9}};System.out.println("原始矩阵:");printMatrix(matrix);setZeroes(matrix);System.out.println("处理后的矩阵:");printMatrix(matrix);}/*** 打印矩阵** @param matrix 待打印的矩阵*/public static void printMatrix(int[][] matrix) {for (int[] row : matrix) {for (int num : row) {System.out.print(num + " ");}System.out.println();}}
}

Solution54. 螺旋矩阵

这里是引用

 矩阵是:{1, 2, 3},{4, 5, 6},{7, 8, 9}①从左到右遍历,遍历了1->3  用matrix[top][i]其中top是0,而i是0,1,2②从从上到下遍历,遍历了6->9  用matrix[i][right]其中right是2,而i是1,2③从右到左遍历,遍历了8->7  用matrix[bottom][i]其中bottom是2,而i是1,0④从下到上遍历左边,遍历了7->4  用matrix[i][left]其中left是0,而i是2,1⑤从左到右遍历,遍历了4->5  用matrix[top][i]其中top是1,而i是0,1
public class Solution {public List<Integer> spiralOrder(int[][] matrix) {List<Integer> result = new ArrayList<>();if (matrix == null || matrix.length == 0 || matrix[0].length == 0) {return result; // 如果矩阵为空,则直接返回空列表}int rows = matrix.length;int cols = matrix[0].length;int left = 0, right = cols - 1;int top = 0, bottom = rows - 1;while (left <= right && top <= bottom) {// 从左到右遍历上边,遍历了1->3和最后的4->5for (int i = left; i <= right; i++) {result.add(matrix[top][i]);}top++;// 从上到下遍历右边,遍历了6->9for (int i = top; i <= bottom; i++) {result.add(matrix[i][right]);}right--;// 如果还有行需要遍历(注意此时top已经加1,所以要判断top-1是否小于等于bottom)if (top <= bottom) {// 从右到左遍历下边,遍历了8->7for (int i = right; i >= left; i--) {result.add(matrix[bottom][i]);}bottom--;}// 如果还有列需要遍历(注意此时right已经减1,所以要判断left是否小于等于right)if (left <= right) {// 从下到上遍历左边,遍历了7->4for (int i = bottom; i >= top; i--) {result.add(matrix[i][left]);}left++;}}return result;}// 主函数,用于测试public static void main(String[] args) {Solution spiralMatrix = new Solution();int[][] matrix = {{1, 2, 3},{4, 5, 6},{7, 8, 9}};List<Integer> result = spiralMatrix.spiralOrder(matrix);// 打印结果for (int num : result) {System.out.print(num + " ");}}
}

Solution48. 旋转图像

这里是引用

第一步:转置矩阵将矩阵的行变成列,列变成行。在代码中,通过遍历矩阵的上三角(包括对角线),并交换 matrix[i][j] 和 matrix[j][i] 来实现转置。1, 2             1, 33, 4   转置后变成  2, 4第二步:反转每一行遍历每一行,每一行数据都进行反转1, 3                  3, 12, 4   每一行反转后变成  4, 2如此变完成了旋转90度
public class Solution {// 主方法,用于测试public static void main(String[] args) {int[][] matrix = {{1, 2, 3},{4, 5, 6},{7, 8, 9}};rotate(matrix);// 打印旋转后的矩阵for (int[] row : matrix) {for (int num : row) {System.out.print(num + " ");}System.out.println();}}/*** 将二维矩阵原地顺时针旋转90度* @param matrix n × n 的二维矩阵*/public static void rotate(int[][] matrix) {int n = matrix.length;// 第一步:转置矩阵for (int i = 0; i < n; i++) {for (int j = i; j < n; j++) {// 交换matrix[i][j]和matrix[j][i]int temp = matrix[i][j];matrix[i][j] = matrix[j][i];matrix[j][i] = temp;}}// 第二步:反转每一行for (int i = 0; i < n; i++) {int left = 0, right = n - 1;while (left < right) {// 交换matrix[i][left]和matrix[i][right]int temp = matrix[i][left];matrix[i][left] = matrix[i][right];matrix[i][right] = temp;left++;right--;}}}
}

Solution240. 搜索二维矩阵 II

这里是引用

从矩阵的右上角或左下角开始搜索:从右上角开始搜索时,如果当前元素大于目标值,我们可以向左移动一列(因为左边的元素更小);如果当前元素小于目标值,我们可以向下移动一行(因为下边的元素更大)。这样,我们总是朝着可能包含目标值的方向移动,直到找到目标值或搜索到矩阵的边界为止。
public class Solution {// 主方法,用于测试public static void main(String[] args) {int[][] 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}};int target = 5;boolean result = searchMatrix(matrix, target);System.out.println("目标值是否存在: " + result);}public static boolean searchMatrix(int[][] matrix, int target) {if (matrix == null || matrix.length == 0 || matrix[0].length == 0) {return false;}int m = matrix.length; // 矩阵的行数int n = matrix[0].length; // 矩阵的列数int row = 0; // 从第一行开始int col = n - 1; // 从最后一列开始while (row 
http://www.dtcms.com/wzjs/417183.html

相关文章:

  • 有专业做网站的推广软文200字
  • 云购网站做的起来吗引擎搜索大全
  • 济南网站建设开发营销网络是什么
  • 做网站去哪个公司免费下载优化大师
  • 网站底部友情链接怎么做的今天的病毒感染情况
  • 清河做网站报价重庆百度总代理
  • 网站建设公司厂天猫关键词排名怎么控制
  • 网站制作的评价标准东莞网站推广大全
  • 广州外贸营销型网站建设公司重庆seo搜索引擎优化优与略
  • 手机网站端域名怎样做解析企业建站模板
  • 商业网站推广站长统计app软件下载2021
  • 揭阳网站制作找哪家2345网址大全下载到桌面
  • 滨海哪家专业做网站免费正规大数据查询平台
  • 网站流量导入是什么意思网推平台有哪些
  • 网站排名代做软文写作300字
  • 信誉比较好的商家可做网站湖南seo优化报价
  • asp做的网站怎么发布域名注册 阿里云
  • 网站首页焦点图巨量数据分析入口
  • 快速网站备案多少钱淘宝搜索排名
  • 宁波网站建设怎么建设排名优化培训
  • app软件开发哪个公司好百度seo怎么把关键词优化上去
  • 怎么做微网站推广360竞价推广怎么做
  • 茂名免费自助建站模板永久免费linux服务器
  • 智慧团建网站首页谷歌广告上海有限公司官网
  • 学做网站能赚钱吗关键词竞价广告
  • 面包机做面包网站赣州seo外包
  • 网站文章页做百度小程序东莞优化怎么做seo
  • 上线了建的网站免费吗网络项目推广平台
  • 自己怎么建立自己的国际网站网络营销的方法
  • 手机上传网站源码网站整站优化