• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > C#查找字符串所有排列组合的方法

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

作者:lele 字体:[增加 减小] 来源:互联网 时间:2017-05-28

lele 通过本文主要向大家介绍了c#字符串组合,c#判断字符串是否为空,c#截取字符串后几位,c#截取字符串前几位,c#替换字符串中的字符等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了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();
}
</div>

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

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

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

相关文章

  • 2017-05-28协定需要会话,但是绑定“BasicHttpBinding”不支持它或者因配置不正确而无法支持它
  • 2017-05-28C#使用WebService结合jQuery实现无刷新翻页的方法
  • 2017-05-28C#基于面向过程计算加权平均分的方法
  • 2017-05-28winform下实现win7 Aero磨砂效果实现代码
  • 2017-05-28在C#中创建和读取XML文件的实现方法
  • 2017-05-28使用GetInvalidFileNameChars生成文件名
  • 2017-05-28详解C#用new和override来实现抽象类的重写区别
  • 2017-05-28VS.net VSS时,编译报错:未能向文件“.csproj.FileListAbsolute.txt”写入命令行 对路径 的访问被拒绝。
  • 2017-05-28C# mysql 插入数据,中文乱码的解决方法
  • 2017-05-28asp.net core mvc权限控制:在视图中控制操作权限

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C#中的let字句应用示例
    • C#二叉搜索树插入算法实例分析
    • C#获取串口列表实现实时监控串口
    • C#实现注册码的方法
    • C# 中如何利用lambda实现委托事件的挂接
    • 再议C#中的装箱与拆箱的问题详解
    • Windows中使用C#为文件夹和文件编写密码锁的示例分享
    • C#生成随机数实例
    • C#遍历指定目录下所有文件的方法
    • C#图片处理3种高级应用

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有