回 帖 发 新 帖 刷新版面

主题:一个数组重复的算法问题,高手帮帮忙

我在写一个去除一个随机数组中重复元素的算法,
 可是每次只能判断前两位,到了第三位就不判断不出了。

回复列表 (共3个回复)

沙发

如果范围N比较小比如1000以内,你可以建一个标志数组exist[N],把exist[input[i]]=1

如果范围很大,可以快速排序,然后输出递增的数

板凳

[quote]如果范围N比较小比如1000以内,你可以建一个标志数组exist[N],把exist[input[i]]=1

如果范围很大,可以快速排序,然后输出递增的数
[/quote]
niu

3 楼

exist[N]实质上就是做的一个映射,从N->bool的映射,它的意义就是N是否出现过,如果N的范围比较大,同样还是可以做映射,用set或map.

我来回复

您尚未登录,请登录后再回复。点此登录或注册