当前位置:   article > 正文

LeetCode- 1329.将矩阵按对角线排序_矩阵按主对角线元素大小重排列

矩阵按主对角线元素大小重排列

/** 1329.将矩阵按对角线排序

* @author 作者 Your-Name:

* @version 创建时间:2020年2月20日 上午9:29:03

* 给你一个 m * n 的整数矩阵 mat ,请你将同一条对角线上的元素(从左上到右下)按升序排序后,返回排好序的矩阵。

 

示例 1:

输入:mat = [[3,3,1,1],[2,2,1,2],[1,1,1,2]]
输出:[[1,1,1,1],[1,2,2,2],[1,2,3,3]]

 

*/

  1. public class 将矩阵按对角线排序 {
  2. public static void main(String[] args)
  3. {
  4. int[][] mat = {{3,3,1,1},{2,2,1,2},{1,1,1,2}};
  5. diagonalSort(mat);
  6. }
  7. public static int[][] diagonalSort(int[][] mat) {
  8. int m = mat.length;
  9. int n = mat[0].length;
  10. for(int i=0;i<m;i++)
  11. {
  12. for(int j=0;j<n;j++)
  13. {
  14. if(i>0&&j>0)
  15. continue;
  16. List<Integer> list = new ArrayList<>();
  17. int a=i,b=j;
  18. while(a<m&&b<n)
  19. {
  20. list.add(mat[a][b]);
  21. a++;
  22. b++;
  23. }
  24. Collections.sort(list);
  25. a = i;
  26. b = j;
  27. int index=0;
  28. while(a<m&&b<n)
  29. {
  30. mat[a][b] = list.get(index++);
  31. a++;
  32. b++;
  33. }
  34. }
  35. }
  36. return mat;
  37. }
  38. }

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/530345
推荐阅读
相关标签
  

闽ICP备14008679号