//特指整数的离散化 有序的离散化
假设a[] 1 3 100 2000 500000
0 1 2 3 4
// 映射的过程就叫离散化
// 1.a[]中可能有重复的元素 所以需要去重
// 2.如何算出x离散化后的值
// 即x的值在a中的下标是多少 (这一步是有序的,所以可以用二分来找)
3.离散化
vector<int> alls;//存储所有待离散化的值
sort(alls.begin(),alls.end());//将所有值排序
alls.erase(unique(alls.begin(),alls.end()),alls.end());
//unique()去掉重复元素,并且返回erase()去重数组的尾端点
unique()会返回重复数组即非重复数组后的重复数组开始的下标虽然说是在一个数组里
// erase()会把人家后面重复数组的下标到最后的删除 这样就剩下了非重复的数组