怎样过滤数组中重复的数据

aspjsp 2007-04-05 01:33:42
int[] a={1,1,2,3,4,3};

最后得到1,2,3,4

求算法,

望高手解答
...全文
519 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
y1x12z8 2007-04-05
  • 打赏
  • 举报
回复
作  者: aspjsp (天天) Blog 加为好友
等  级:
信 誉 值: 79
xray2005 2007-04-05
  • 打赏
  • 举报
回复
int[] a ={ 1, 1, 2, 3, 4, 3 };
ArrayList list = new ArrayList();
for (int i = 0; i < a.Length; i++)
{
if (!list.Contains(a[i]))
{
list.Add(a[i]);
}
}

danjiewu 2007-04-05
  • 打赏
  • 举报
回复
如果不需要保持原有的顺序,直接用Hashtable,.Net2.0用Dictionary。
如果要保持原有的顺序,用Hashtable查找已有的值,结果保存到ArrayList里。
asdfsadfasdfafa 2007-04-05
  • 打赏
  • 举报
回复
hbxtlhx(平民百姓)的方法 感觉不错

如果先排序,再操作的话,我想知道,排序需要嵌套几次循环??能比hbxtlhx(平民百姓)的方法效率高?
y1x12z8 2007-04-05
  • 打赏
  • 举报
回复
hbxtlhx(平民百姓) 的搞法是简单,不过慢,跟冒泡一样
y1x12z8 2007-04-05
  • 打赏
  • 举报
回复
先排序,再遍历一遍,current==next的话,to next
北京的雾霾天 2007-04-05
  • 打赏
  • 举报
回复
这样吧:
int[] a ={ 1, 1, 2, 3, 4, 3 };
ArrayList list = new ArrayList();
for (int i = 0; i < a.Length; i++)
{
if (!list.Contains(a[i]))
{
list.Add(a[i]);
}
}
ismezy2002 2007-04-05
  • 打赏
  • 举报
回复
可以考虑用HashTable

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧