2025-08-28 学习日记

发布于 2025-08-28 12:00 391 字 2 min read 手写 每个字都是我自己敲的。

2025-12-24 学习日记2025-12-17 学习日记2025-12-14 学习日记2025-12-09 学习日记2025-12-08 学习日记2025-12-07 学习日记2025-12-06 学习日记2025-12-05 学习日记2025-12-04 学习日记2025-12-03 学习日记2025-12-02 学习日记2025-12-01 学习日记2025-11-30 学习日记2025-11-29 学习日记2025-11-28 学习日记2025-11-27 学习日记2025-11-26 学习日记2025-11-25 学习日记2025-11-24 学习日记2025-11-23 学习日记2025-11-22 学习日记2025-11-21 学习日记2025-11-20 学习日记2025-11-19 学习日记2025-11-18 学习日记2025-11-17 学习日记2025-11-16 学习日记2025-11-15 学习日记2025-11-14 学习日记2025-11-13 学习日记2025-11-12 学习日记2025-11-11 学习日记2025-11-10 学习日记2025-11-09 学习日记2025-11-08 学习日记2025-11-07 学习日记2025-11-06 学习日记2025-11-05 学习日记2025-11-04 学习日记2025-11-03 学习日记2025-11-02 学习日记2025-11-01 学习日记2025-10-31 学习日记2025-10-30 学习日记2025-10-29 学习日记2025-10-28 学习日记2025-10-27 学习日记2025-10-26 学习日记2025-10-25 学习日记2025-10-24 学习日记2025-10-23 学习日记2025-10-22 学习日记2025-10-21 学习日记2025-10-20 学习日记2025-10-19 学习日记2025-10-18 学习日记2025-10-17 学习日记2025-10-16 学习日记2025-10-15 学习日记2025-10-14 学习日记2025-10-13 学习日记2025-10-11 学习日记2025-10-10 学习日记2025-10-09 学习日记2025-10-03 学习日记2025-10-02 学习日记2025-10-01 学习日记2025-09-30 学习日记2025-09-29 学习日记2025-09-28 学习日记2025-09-27 学习日记2025-09-26 学习日记2025-09-25 学习日记2025-09-24 学习日记2025-09-23 学习日记2025-09-22 学习日记2025-09-21 学习日记2025-09-20 学习日记2025-09-18 学习日记2025-09-17 学习日记2025-09-16 学习日记2025-09-15 学习日记2025-09-14 学习日记2025-09-13 学习日记2025-09-12 学习日记2025-09-11 学习日记2025-09-10 学习日记2025-09-09 学习日记2025-09-08 学习日记2025-09-04 学习日记2025-09-03 学习日记2025-09-02 学习日记2025-09-01 学习日记2025-08-31 学习日记2025-08-29 学习日记2025-08-28 学习日记2025-08-27 学习日记2025-08-26 学习日记2025-08-25 学习日记2025-08-24 周记2025-08-23 学习日记2025-08-22 学习日记2025-08-21 学习日记2025-08-20 学习日记2025-08-19 学习日记2025-08-18 学习日记2025-08-17 周记2025-08-16 学习日记2025-08-15 学习日记2025-08-14 学习日记2025-08-13 学习日记2025-08-12 学习日记2025-08-11 学习日记
今日学习记录 1. 按对角线进行矩阵排序leetcode.3446 关键词: 问题分析: 就是把对角线元素排序,但是这个对角线是左上向右下斜的 核心思路 就是模拟找规律,首先我们要找到对角线的规律,之前常规的对角线是 i+j 等于定值,但这个有所不同,可以发现在中间对角线上,i-j=0,在上对角中(0,1),(1,2),1-0=2-1,故 i-j 为定值; 故设 k = i-j+n,右上角为 k...

今日学习记录

1. 按对角线进行矩阵排序leetcode.3446

关键词:矩阵 排序 问题分析:

  1. 就是把对角线元素排序,但是这个对角线是左上向右下斜的

核心思路

  1. 就是模拟找规律,首先我们要找到对角线的规律,之前常规的对角线是 i+j 等于定值,但这个有所不同,可以发现在中间对角线上,i-j=0,在上对角中(0,1),(1,2),1-0=2-1,故 i-j 为定值;
  2. 故设 k = i-j+n,右上角为 k = 0-(n-1)+n = 1;对吧,左下角为 k = n+m-1;
  3. 根据 k,我们只用知道 i 或 j 就可以知道坐标,所以要找到排序的数组范围,只需要找 j 或 i 的最大值或者最小值,在遍历收集元素排序,还原就行

**最终代码: 注意,给出的是矩形的题解,如果是正方形 m=n;

vector<vector<int>> sortMatrix(vector<vector<int>>& grid) {

        int m = grid.size(),n = grid[0].size();

        for(int k = 1;k<n+m;k++){

            int min_j = max(n-k,0);

            int max_j = min(m-k+n-1,n-1);

            vector<int> arr;

            for(int j = min_j;j<=max_j;j++){

                arr.push_back(grid[k+j-n][j]);

            }

            if(min_j>0) ranges::sort(arr);

            else ranges::sort(arr,greater<int>());

            for(int j = min_j;j<=max_j;j++){

                grid[k+j-n][j] = arr[j-min_j];

            }

        }

        return grid;

    }

今日收获

  1. 新技巧

  2. 待加强

  3. 明日计划:

    • [ ]
    • [ ]

执笔 手写

随机文章

加载中...