求助算法问题,在线等

xx_88 2009-01-16 11:48:52
数组1 = 606,629,631,609
数组2 = 606,631,609
两个数组中比较,取出数组中不同的一项629,只要629
另外下面是我写的,请帮我看看,先谢谢了
 foreach (ListItem sItem in Chk_Selected.Items)
{
foreach (string strArr in lastSelectItem.TrimEnd(',').Split(','))
{
if (sItem.Value == strArr)
{
break;
}
else
{
sValue = sItem.Value;
}
}
}
...全文
131 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xx_88 2009-01-16
  • 打赏
  • 举报
回复
to :scjtswj
谢谢啊!之前用了下面这种方法

bool flag = false;

for (int i = 0; i < Chk_Selected.Items.Count; i++)
{
for (int j = 0; j < strExis.Length; j++)
{
if (strExis[j].Trim() == Chk_Selected.Items[i].Value.Trim())
{
break;
}
else
{
if (j + 1 == strExis.Length)//找完所有第二个数组,没找到相同的
{
sValue = Chk_Selected.Items[i].Value.Trim();
flag = true;
break;//没找到相同的,跳出本循环
}
continue;
}

}
if (flag)
{
break;//没找到相同的,跳出循环
}
}
scjtswj 2009-01-16
  • 打赏
  • 举报
回复

List<string> listA = new List<string>();
listA.Add("606");
listA.Add("629");
listA.Add("631");
listA.Add("609");

List<string> listB = new List<string>();
listB.Add("606");
listB.Add("631");
listB.Add("609");

foreach (string str in listB)
{
if (listA.Contains(str))
{
listA.Remove(str);
}
}

foreach (string str in listA)
{
Response.Write(str);
Response.Write("<br/>");
}


qwertxp 2009-01-16
  • 打赏
  • 举报
回复
把较短的那组内容放到LIST中,然后利用Contains方法判断另一组是否存在于LIST中,如果FLASE自然就是不同项了。
xx_88 2009-01-16
  • 打赏
  • 举报
回复
1能确定是数组1中比数组2中多吗?
2能确定只有一项吗?
------------------------
12成立
但我试了一下你给的代码,还是取不到不相同的哪项
lpyqyc 2009-01-16
  • 打赏
  • 举报
回复
理论上没什么问题,但是
1能确定是数组1中比数组2中多吗?
2能确定只有一项吗?

就算这两条都成立 你的算法也不对,数组1中631和609交换以后结果就不正确了

string returnvalue = "";
bool biaozhi = false;
foreach (ListItem sItem in Chk_Selected.Items)
{
foreach (string strArr in lastSelectItem.TrimEnd(',').Split(','))
{
if (sItem.Value == strArr)
{
biaozhi = true;
break;
}
}
if (!biaozhi)
{
returnvalue = sItem.Value;
break;
}
}
xx_88 2009-01-16
  • 打赏
  • 举报
回复
help

62,269

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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