关闭

怎么去数组的重复值!

3075人阅读 评论(0) 收藏 举报

一个笨方法  
  双重循环..  
  还有一个笨方法  
  循环数组,放到ArrayList里面  
  放入之前用ArrayList.Contain来判断..  
  然后再ArrayList.CopyTo回去... 

 

int[]   ar=new   int[]{1,2,3,4,1,6,7,3};  
   
  ArrayList   al=new   ArrayList();  
  foreach(int   i   in   ar)  
  {  
  if   (!al.Contains(i))  
  {  
  al.Add(i);  
  }  
  }  
  int[]   newAr=new   int[al.Count];  
  for(int   i=0;i<al.Count;i++)  
  {  
  newAr[i]=(int)al[i];  
  }   


楼主lrxz(九月鹰飞.Net)2003-08-25 08:49:13 在 .NET技术 / ASP.NET 提问

一个数组:  
  {1,1,1,2,2,2,3,3,3}  
  我要去除重复的项怎么去掉?  
  因为重复的次数不定,有可能是三个,有可能是四个。而且维数也不定。  
  怎么办?

数组中重复的项去除怎么做?

6 楼saucer(思归)回复于 2003-08-25 09:44:24 得分 30

public   static   int[]     RemoveDup(int[]   myData)  
    {  
  if   (myData.Length   >   0)  
  {  
  Array.Sort(myData);  
   
  int   size   =   1;   //at   least   1  
  for   (int   i=1;   i<myData.Length;   i++)  
          if   (myData[i]   !=   myData[i-1])  
                          size++;  
   
  int[]   myTempData   =   new   int[size];  
   
  int   j=0;  
   
  myTempData[j++]   =   myData[0];  
   
  for   (int   i=1;   i<myData.Length;   i++)  
          if   (myData[i]   !=   myData[i-1])  
                          myTempData[j++]   =   myData[i];  
   
  return   myTempData;  
  }  
   
  return   myData;    
    }  
   
   
  int[]   myData   =   {1,1,1,5,2,2,2,3,3,3,4};  
  myData   =   RemoveDup(myData);  
  foreach   (int   x   in   myData)  
      Console.WriteLine(x);

 

http://topic.csdn.net/t/20030825/08/2184273.html

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:631219次
    • 积分:7149
    • 等级:
    • 排名:第3126名
    • 原创:32篇
    • 转载:265篇
    • 译文:0篇
    • 评论:90条
    最新评论