在我的一个应用程序中,我想要将字符串内容和其他应用程序混合,如果我将这个随机字符串作为输入传递,那么该应用程序必须返回原始字符串值。是否有任何方法可以在dotnet平台中执行此操作?
答案 0 :(得分:2)
您可以使用Fisher–Yates shuffle算法。
它是一种用于生成有限的随机排列的算法 set-in plain terms,用于随机洗牌。
用于生成数字1-N的随机排列的基本方法如下:
有一个例子:shuffle algorithm
好的here
答案 1 :(得分:1)
绝对不是开箱即用,而是创建一个struct
struct ShuffleChar{
char c;
int index;
}
当你洗牌时,给每个字母分配一个index
,这样你就可以把它们放在一起了。请记住,string
只有在字母顺序正确的情况下才有意义,更改该顺序会破坏该信息,并且很有可能无法恢复它......