Думал есть какой-то метод типа .Suffle() но нет, подскажите как перемешать словарь типа Dictionary чтобы пары сохранились но порядок был другой?
int не по порядку, набор разных не повторяющихся цифр (1,5,7,8,15,18 и т.д.)...
Zefirot, можно из словаря всегда получать значения в каком-то заданном порядке (в том числе перемешанном единожды), но не таким способом, который был показан.
Dictionary не хранит порядок элементов. Тот факт, что они возвращаются в каком-то одинаковом порядке при энумерации - это исключительно удача. Кроме того, порядок может меняться в зависимости от версии и платформы.
Вам нужен какой-то другой способ хранения данных. Например - `System.Collections.Specialized.OrderedDictionary`
Или, как вариант, вы можете хранить ключи в отдельном массиве и использовать его как способ определения порядка.
Есть SortedDictionary, который представляет собой BST.
Это лучшее решение для сортированного словаря. А в массиве только сложность поиска индекса нужного будет O(n). Что не имеет смысла.
Насколько я помню, OrderedDictionary (был?) доступен не на всех платформах.
> поиска индекса нужного будет O(n).
Зависит от использования. Не факт, что автору нужен поиск индекса элемента нужен автору. Тем более, что в OrderedDictionary его тоже нет, а linq скорее всего даст тот же O(n)