主题:一个数组重复的算法问题,高手帮帮忙
njhyy
[专家分:110] 发布于 2006-12-11 11:13:00
我在写一个去除一个随机数组中重复元素的算法,
可是每次只能判断前两位,到了第三位就不判断不出了。
回复列表 (共3个回复)
沙发
forjane [专家分:5670] 发布于 2006-12-11 19:06:00
如果范围N比较小比如1000以内,你可以建一个标志数组exist[N],把exist[input[i]]=1
如果范围很大,可以快速排序,然后输出递增的数
板凳
雨523 [专家分:200] 发布于 2006-12-12 19:04:00
[quote]如果范围N比较小比如1000以内,你可以建一个标志数组exist[N],把exist[input[i]]=1
如果范围很大,可以快速排序,然后输出递增的数
[/quote]
niu
3 楼
rickone [专家分:15390] 发布于 2006-12-13 12:16:00
exist[N]实质上就是做的一个映射,从N->bool的映射,它的意义就是N是否出现过,如果N的范围比较大,同样还是可以做映射,用set或map.
我来回复