大家好,我现在有这么个需求,就是我有一个数组,如果里面的值全都相同,我就得到这个数值,以及数组元素全部索引,如果数组中的值并不相同,我就得到所有不同的值,以及不同的值对应的所有数组元素的索引,举个例子
比如有个int数组,姑且叫int a,如下
[code="java"]int[] a = new int[10][/code]
如果a中的数值都相同,假设都为1,那么我就得到1,同时得到的索引值为0、1、2、3、4、5、6、7、8、9
如果a中的值不相同,比如a的值为{1,1,1,1,1,2,2,3,3,4},我的到值分别为1、2、3、4。同时,我获得不同的值对应的所有数组元素索引,这个例子中,数值1对应索引0、1、2、3、4,数值2对应索引5、6,数值3对应索引7、8,数值4对应索引9
如果数组的值为{1,1,5,1,2,2,3,5,3,1},我得到的值为1,5,2,3,数值1对应索引0、1、3、9,数值5对应2、7、数值2对应索引4、5,数值3对应对应索引6、8
要求算法的执行效率要尽可能快,说白了就是运算越快越好。(别告诉我就是两个循环比较--b)
[color=red]附注:如果能用正则表达式获得相同的效果也可以,麻烦您给个完整例子嘿嘿[/color]
小弟就剩7分了,所以只能送5分,想豁出去全送了竟然不行,恳请算法好的朋友写个代码,拜谢,回头去雍和宫给您烧株高香!!!!!