码迷,mamicode.com
首页 > 编程语言 > 详细

【leetcode】数组序号转换

时间:2020-09-17 20:52:31      阅读:33      评论:0      收藏:0      [点我收藏+]

标签:orm   span   star   for   amp   int   def   数组   important   

 

typedef struct{
    int val;
    int index;
}st;
int cmp(const void* a, const void* b){
    return ((st*)a)->val - ((st*)b)->val;
}
int* arrayRankTransform(int* arr, int arrSize, int* returnSize){
    st* stArr = (st*)calloc(arrSize,sizeof(st));
    int i,j=1;
    for (i=0; i<arrSize; i++) 
    {
        stArr[i].index = i;
        stArr[i].val = arr[i];
    }
    qsort(stArr,arrSize,sizeof(st),cmp);
    for (i=0; i<arrSize; i++) 
    {
        arr[stArr[i].index] = (i && stArr[i].val == stArr[i-1].val)? j-1: j++;
    }
    *returnSize = arrSize;
    return arr;
}

 

【leetcode】数组序号转换

标签:orm   span   star   for   amp   int   def   数组   important   

原文地址:https://www.cnblogs.com/ganxiang/p/13645847.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!