Иногда бывает нужно перемешать(отсортировать) определённый список или массив данных в случайном порядке.
Вот один вариант решения данной задачи:
Вот один вариант решения данной задачи:
class Randoming { public static void MixList<t>(IList<t> list) { Random r = new Random(); //Создаем сортируемый список и набиваем в него значения из //целевого списка. Тип SortedList устроен так, что при добавлении //нового элемента, он (элемент) помещается не в конец списка //элементов, а между ними, обеспечивая моментальную автоматическую //сортировку списка SortedList<int, t> mixedList = new SortedList<int, t>(); //заполняем список foreach (t item in list) mixedList.Add(r.Next(), item); list.Clear(); for (int i = 0; i < mixedList.Count; i++) { list.Add(mixedList.Values[i]); } } } static void Main(string[] args) { Console.WriteLine("Сейчас будет рандомная сортировка"); List<string> myList = new List<string>(); //List<string> result = new List<string>(); for (int i = 0; i < 50; i++) myList.Add(i.ToString()); Randoming.MixList(myList); foreach(var ml in myList) { //result.Add(ml); Console.WriteLine(ml); } //Console.WriteLine(result); Console.ReadLine(); }
Комментариев нет:
Отправить комментарий