现有一个数组.
int a[15] = {4,5,6,2,5,8,7,4,6,6,8,4,5,2,1};
想得到如下数组 result[n] = {8,15,18,4,16,7,1}
也就是值相等的元素相加,这个算法该怎么描述?

解决方案 »

  1.   

    他说的是图像里常用的直方图均衡算法吧?不是这样算的,比方说256色图,要算各种颜色值可以这样算:
    开辟一个256个数组s[256],并初始化为零,然后读取图像颜色值*p,然后让s[*p]++,这种一直算下去,各种颜色值和数量N就算出来了,比方说颜色为1的在s[1]中,
    好像这个算法可以应付楼主的要求,只要楼主的数的总数不是很多
      

  2.   

    如果我理解错了,你最后按上面方法求出所有值个数后,再s[i]*i就得到总和了