想要一个找出数组相同字符的算法!
比如 
s[0]="a"
s[1]="b"
s[2]="c"
s[3]="d"
s[4]="a"
s[5]="a"最后要的结果是
a
b
c
d请给个详细算法谢谢!

解决方案 »

  1.   

     string[] s = new string[6];
                s[0] = "a";
                s[1] = "b";
                s[2] = "c";
                s[3] = "d";
                s[4] = "a";
                s[5] = "a";            List<string> list = new List<string>();
                list.AddRange(s);
                list.Reverse();
                List<string> list1 = new List<string>();
                string v = list[0];            for (int i = 1; i < list.Count; i++)
                {
                    if (v != list[i])
                    {
                        list1.Add(v);
                        v = list[i];
                    }
                }
      

  2.   


    string[] s=new string[6];
    s[0]="a";
    s[1]="b";
    s[2]="c";
    s[3]="a";
    s[4]="b";
    s[5]="c"; string v="";
    for(int i=0;i<s.Length;i++)
    {
    if(i==0)
    {
    v=s[i]+"|";
    }
    else
    {
    if(v.IndexOf(s[i])<0)
    {
    v+=s[i]+"|";
    }
    }
    }
    v=v.Substring(0,v.Length-1);
    string[] new_s=v.Split('|');
      

  3.   


    List<string> list = new List<string>();
    for(int i=0;i<s.Length;i++)
    {
        if(!list.Contains(s[i]))
        {
            list.Add(s[i]);
            Console.WriteLine(s[i]);
        }
    }
      

  4.   

    如果采用foreach循环更好
    foreach(string str in s)
    {
        if(!list.Contains(str))
        {
            list.Add(str);
            Console.WriteLine(str);
        }
    }
    当然效果是一样的