(无序)数组去重,虽然不是比较优的算法,但是个人感觉还可以

public string[] deleteRepeat( string[] mobile) {

List d_index = new List();//重复数据的索引放在这里

List a_index = new List();//非重复数据的索引放在这里

for (int i = 0; i < mobile.Length-1; i++) {

int c = -1;//其实这里用bool更好一点

for (int k = 0; k < d_index.Count; k++) {

if (i == d_index[k]) {

c++; continue;//判重

}

}

if (c > -1)

continue;

a_index.Add(i);//在前面确保无重复的情况下,把索引添加到list里面

for (int j = i + 1; j < mobile.Length; j++) {

if (mobile[i].Equals(mobile[j])) {

d_index.Add(j);//发现重复,把索引添加到list里面

}

}

}

string[] res_mobile = new string[a_index.Count];

int count = 0;

foreach (int i in a_index) {

res_mobile[count] = mobile[i]; count++;

}

return res_mobile;//返回的非重复数据

}

猜你喜欢

转载自my.oschina.net/u/2551141/blog/672909
今日推荐