Beispiel #1
0
        public static void Sort_UsingArraySortMethod <T>(this LinkedList <T> list, ArraySortMethod <LinkedListNode <T> > sortMethod, IComparer <T> comparer = null)
        {
            LinkedListNode <T>[]            arr          = list.GetNodes();
            IComparer <LinkedListNode <T> > nodeComparer = comparer.GetLinkedListNodeComparer();

            // Сортируем массив узлов.

            sortMethod(arr, nodeComparer);

            // Восстанавливаем порядок в связном списке на основе массива узлов.

            list.Reorder_As_In_NodeList(arr);

            return;
        }