C#如何在字符串列表中置换所有元素
我有一个字符串列表,我希望彼此的所有元素的所有排列
示例:
var myList = new List<string>{ "AB", "CD", "EF", "GK" };
结果我想要这样的字符串。
var resultStr = "ABCD,ABEF,ABGK,CDAB,CDEF,CDGK,EFAB,EFCD,EFGK,GKAB,GKCD,GKEF";
请注意,结果不包括“ ABAB”,“ CDCD”,“ EFEF”,“ GKGK”,
除了/foreach loops/foreach循环外,还有什么短途方法可以做到这一点吗?
I have a string list and i want all permutations of all elements with each others
Example :
var myList = new List<string>{ "AB", "CD", "EF", "GK" };
and as result i want a string like this.
var resultStr = "ABCD,ABEF,ABGK,CDAB,CDEF,CDGK,EFAB,EFCD,EFGK,GKAB,GKCD,GKEF";
note that resultStr doesnt include "ABAB","CDCD","EFEF","GKGK"
is there any short way to do this except double for/foreach loops?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Q:除了/foreach循环外,还有什么短途方法可以做到这一点?
是的,您可以使用Linq。
这是结果的LINQ语法表达式:
您还可以使用Linq扩展方法:
两者都将输出
。它
Q: is there any short way to do this except double for/foreach loops?
Yes, you can use LINQ.
Here's the LINQ syntax expression for your result:
You can also use the LINQ extension methods:
Both will output
.NET Fiddle so you can try it