• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

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

c# 搞代码 4年前 (2022-01-09) 15次浏览 已收录 0个评论

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 _result = new List();              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++)             <strong>本文来源gaodai#ma#com搞@@代~&码网</strong>   {                    char t = _chars[i];                    _chars[i] = _chars[i + 1];                    _chars[i + 1] = t;                    string s2 = new string(_chars);                    _result.Add(s2);                }            }            return _result.ToArray();        }

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:C#查找字符串的所有排列组合
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址