随机化文件夹中输出的文件

jan*_*ann 1 c# asp.net random

如何随机化我获得的文件的顺序:

string[] files = Directory.GetFiles("folder");
Run Code Online (Sandbox Code Playgroud)

谢谢!:-)

Kob*_*obi 5

一种选择是使用Random:

Random rng = new Random();
Run Code Online (Sandbox Code Playgroud)

然后:

var randomOrderFiles = files.OrderBy(f => rng.Next());
Run Code Online (Sandbox Code Playgroud)

这不是最有效的方法,因为它需要O(nlogn).如果这对您来说是个问题,则存在更好的算法.