一个string数组,里面的数据两两组合的算法

浑沌滴年代 2013-08-29 05:45:45
一个string数组,里面的数据两两组合,可以得到多少种不同的结果,求算法;
比如string[] strArray={"关键词1","关键词2","关键词3","关键词4","关键词5","关键词6"}

组合的大概结果为:
1,关键词1关键词2
2,关键词1关键词3
3,关键词1关键词4
......这里只是举个例子,算法是怎么样的?
...全文
1012 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2013-08-29
  • 打赏
  • 举报
回复
这个中学数学教材上古典概型一章都有 数组有N个元素 那么第一次取有N个取法 第二次取,不能取这个元素了,那么就是剩下的N-1个。 所以一共是N*(N-1)种取法。 如果不考虑顺序,因为取2个元素,所以只有2个顺序,那么就是再除以2。 也就是N*(N-1)/2。 要知道为什么!
浑沌滴年代 2013-08-29
  • 打赏
  • 举报
回复
引用 2 楼 q107770540 的回复:
	var query=from s in strArray
	          from t in strArray.Except(new string[]{s})
			  select s+t;
哈哈,自己算出来了,算法是这样的, 比如数组有2个元素,组全的结果就是(2*(2-1))/2=1 比如数组有3个元素,组全的结果就是(3*(3-1))/2=3 比如数组有4个元素,组全的结果就是(4*(4-1))/2=6 比如数组有5个元素,组全的结果就是(5*(5-1))/2=10
q107770540 2013-08-29
  • 打赏
  • 举报
回复
	var query=from s in strArray
	          from t in strArray.Except(new string[]{s})
			  select s+t;
q107770540 2013-08-29
  • 打赏
  • 举报
回复
	string[] strArray={"关键词1","关键词2","关键词3","关键词4","关键词5","关键词6"};
	var query=from s in strArray
	          from t in strArray
			  select s+t;

62,046

社区成员

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

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

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

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