首页 > 其他 > 详细

【leetcode】距离顺序排列矩阵单元格

时间:2020-09-21 10:45:35      阅读:87      评论:0      收藏:0      [点我收藏+]

 

int cmp(const void* a, const void* b){
    return (abs((*(int**)a)[0]) + abs((*(int**)a)[1])) - (abs((*(int**)b)[0]) + abs((*(int**)b)[1]));
}

int** allCellsDistOrder(int R, int C, int r0, int c0, int* returnSize, int** returnColumnSizes){
    int i,j,pst=0;
    int** arr = (int**)malloc(R*C*sizeof(int*));
    for (i=0; i<R; i++)
    {
        for (j=0; j<C; j++)
        {
            int* unit = (int*)malloc(2*sizeof(int));
            arr[pst++] = unit;
            unit[0] = i-r0;
            unit[1] = j-c0;
        }
    }
    qsort(arr,pst,sizeof(int*),cmp);
    int* retCol = (int*)malloc(pst*sizeof(int));
    for (i=0; i<pst; i++)
    {
        arr[i][0] += r0;
        arr[i][1] += c0;
        retCol[i] = 2;
    }
    *returnColumnSizes = retCol;
    *returnSize = pst;
    return arr;
}

 

【leetcode】距离顺序排列矩阵单元格

原文:https://www.cnblogs.com/ganxiang/p/13703776.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!