1329. 将矩阵按对角线排序

1329. 将矩阵按对角线排序


题目链接:1329. 将矩阵按对角线排序

代码如下:

cpp 复制代码
//参考:https://leetcode.cn/problems/sort-the-matrix-diagonally/solutions/2760094/dui-jiao-xian-pai-xu-fu-yuan-di-pai-xu-p-uts8
class Solution {
public:
    vector<vector<int>> diagonalSort(vector<vector<int>>& mat) 
    {
        int m=mat.size(),n=mat[0].size();
        vector<int> a(min(m,n));
        for(int k=1-n;k<m;k++)//k=i-j
        {
            int left_i=max(k,0),right_i=min(k+n,m);
            for(int i=left_i;i<right_i;i++)
            {
                a[i-left_i]=mat[i][i-k];
            }
            sort(a.begin(),a.begin()+(right_i-left_i));
            for(int i=left_i;i<right_i;i++)
            {
                mat[i][i-k]=a[i-left_i];
            }
        }
        return mat;
    }
};
相关推荐
感哥12 小时前
C++ 面向对象
c++
沐怡旸14 小时前
【底层机制】std::shared_ptr解决的痛点?是什么?如何实现?如何正确用?
c++·面试
感哥20 小时前
C++ STL 常用算法
c++
saltymilk1 天前
C++ 模板参数推导问题小记(模板类的模板构造函数)
c++·模板元编程
感哥1 天前
C++ lambda 匿名函数
c++
沐怡旸2 天前
【底层机制】std::unique_ptr 解决的痛点?是什么?如何实现?怎么正确使用?
c++·面试
感哥2 天前
C++ 内存管理
c++
博笙困了2 天前
AcWing学习——双指针算法
c++·算法
感哥2 天前
C++ 指针和引用
c++
感哥2 天前
C++ 多态
c++