gpt4 book ai didi

c# - 找到句子中单词的所有排列

转载 作者:太空宇宙 更新时间:2023-11-03 11:48:49 25 4
gpt4 key购买 nike

我怎样才能得到句子中单词的所有排列。你能为此提供一个示例 C# 代码吗?例如:如果句子是“C# not java”, 输出应该是,1) c# 不是 java 2) c# java 不是 3) java 不是 c# 4) java c# 不是 5) 不是 java c# 6) 不是 c# java 等

最佳答案

试试这是否适合你。

public static List<string> PermuteWords(string s)
{
string[] ss = s.Split(new string[] {" "}, StringSplitOptions.RemoveEmptyEntries);
bool[] used = new bool[ss.Length];
string res = "";
List<string> list = new List<string>();
permute(ss, used, res, 0, list);
return list;
}

private static void permute(string[] ss, bool[] used, string res, int level, List<string> list)
{
if (level == ss.Length && res != "")
{
list.Add(res);
return;
}
for (int i = 0; i < ss.Length; i++)
{
if (used[i]) continue;
used[i] = true;
permute(ss, used, res + " " + ss[i], level + 1, list);
used[i] = false;
}
}

关于c# - 找到句子中单词的所有排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2635868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com