本来应该配着一道题讲的 因为太晚了就先咕咕了
挖个坑 虽然大概率应该不会填
离散化简单来说就是 当你需要用数组统计一些数的出现次数 但数据范围过大(如1e9)无法使用数组存储 并且我们只需要关注这些数的相对大小关系 我们就可以使用离散化
举个例子 我们可以将 721 224 3328 721 离散化处理 变成 2 1 3 2
具体过程概括如下:
1.memcpy一份完全相同的数组b
2.对b进行去重并进行排序
3.将原数组的数值都替换为其在b数组中对应的编号
代码实现如下
本来应该配着一道题讲的 因为太晚了就先咕咕了
挖个坑 虽然大概率应该不会填
离散化简单来说就是 当你需要用数组统计一些数的出现次数 但数据范围过大(如1e9)无法使用数组存储 并且我们只需要关注这些数的相对大小关系 我们就可以使用离散化
举个例子 我们可以将 721 224 3328 721 离散化处理 变成 2 1 3 2
具体过程概括如下:
1.memcpy一份完全相同的数组b
2.对b进行去重并进行排序
3.将原数组的数值都替换为其在b数组中对应的编号
代码实现如下