C#查找字符串所有排列组合的方法

Danica ·
更新时间:2024-09-21
· 807 次阅读

本文实例讲述了C#查找字符串所有排列组合的方法。分享给大家供大家参考。具体实现方法如下:

// 1. remove first char // 2. find permutations of the rest of chars // 3. Attach the first char to each of those permutations. // 3.1 for each permutation, move firstChar in all indexes // to produce even more permutations. // 4. Return list of possible permutations. public string[] FindPermutations(string word) { if (word.Length == 2) { char[] _c = word.ToCharArray(); string s = new string(new char[] { _c[1], _c[0] }); return new string[] { word, s }; } List<string> _result = new List<string>(); string[] _subsetPermutations = FindPermutations(word.Substring(1)); char _firstChar = word[0]; foreach (string s in _subsetPermutations) { string _temp = _firstChar.ToString() + s; _result.Add(_temp); char[] _chars = _temp.ToCharArray(); for (int i = 0; i < _temp.Length - 1; i++) { char t = _chars[i]; _chars[i] = _chars[i + 1]; _chars[i + 1] = t; string s2 = new string(_chars); _result.Add(s2); } } return _result.ToArray(); }

希望本文所述对大家的C#程序设计有所帮助。

您可能感兴趣的文章:C#生成指定范围内的不重复随机数C#生成不重复随机字符串类C#生成唯一不重复订单号C#随机生成不重复字符串的两个不错方法C#不重复输出一个数组中所有元素的方法C#实现在购物车系统中生成不重复订单号的方法c# 两个数组比较,将重复部分去掉,返回不重复部分的实现C#实现排列组合算法完整实例C#中实现任意List的全组合算法代码C#实现组合排列的方法详解C#的排列组合C#实现生成所有不重复的组合功能示例



C# 排列 方法 字符串 排列组合 字符

需要 登录 后方可回复, 如果你还没有账号请 注册新账号
相关文章