20.11.16 leetcode406 leetcode中的排序写法

题目链接:https://leetcode-cn.com/problems/matrix-cells-in-distance-order/

题意:给很多二维点,要求将这些二维点按照到一定点的距离远近进行排序。

分析:直接排序很简单,第一次写leetcode这种排序方式。

class Solution {
public:
    vector<vector<int>> allCellsDistOrder(int R, int C, int r0, int c0) {
        vector<vector<int>> ans;
        for(int i=0;i<R;i++){
            for(int j=0;j<C;j++){
                ans.push_back({i,j});
            }
        }
        sort(ans.begin(),ans.end(),[=](vector<int>& a,vector<int>& b){
            return (abs(a[0]-r0)+(abs(a[1]-c0)))<(abs(b[0]-r0)+(abs(b[1]-c0)));
        });
        return ans;
    }
};

 

posted @ 2020-11-16 19:58  清酒令  阅读(64)  评论(0编辑  收藏  举报