LeetCode 1337矩阵中战斗力最弱的K行[自定义排序] HERODING的LeetCode之路

Posted HERODING23

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 1337矩阵中战斗力最弱的K行[自定义排序] HERODING的LeetCode之路相关的知识,希望对你有一定的参考价值。


解题思路:
一个标准的排序问题,根据下标进行排序,创新点在于排序的内容是与其他数组相关,所以解决方案是我们先获取所有行数的下标,对于下标的排序,通过自定义排序函数进行,代码如下:

class Solution {
public:
    vector<int> kWeakestRows(vector<vector<int>>& mat, int k) {
        int len = mat.size();
        vector<int> res;
        for(int i = 0; i < len; i ++) {
            res.push_back(i);
        }
        // 自定义排序
        sort(res.begin(), res.end(), [&](const int& a, const int& b) {
            return mat[a] == mat[b] ? a < b : mat[a] < mat[b];
        });
        vector<int> ans(res.begin(), res.begin() + k);
        return ans;
    }
};

以上是关于LeetCode 1337矩阵中战斗力最弱的K行[自定义排序] HERODING的LeetCode之路的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode Algorithm 1337. 矩阵中战斗力最弱的 K 行

Python描述 LeetCode 1337. 矩阵中战斗力最弱的 K 行

LeetCode 1337矩阵中战斗力最弱的K行[自定义排序] HERODING的LeetCode之路

LeetCode 1337. 矩阵中战斗力最弱的 K 行/215. 数组中的第K个最大元素(topk快排堆排)/743. 网络延迟时间(最短路径迪杰斯特拉,弗洛伊德)

leetcode:1337. 方阵中战斗力最弱的 K 行

1337. 矩阵中战斗力最弱的 K 行