25 / 25 / 22
Регистрация: 22.02.2015
Сообщений: 125
1

Алгоритм нисходящей сортировки слиянием. Переделать для двусвязного списка (LinkedList)

23.05.2016, 11:48. Показов 1468. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть проблема с переписыванием алгоритма для двусвязного списка LinkedList, как это можно реализовать
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
public int MergeDownSort(List<int> sequence, int left, int right)
        {
            if (left == right)
                return 0;
            int mid = (left + right)/2;
            MergeDownSort(sequence, left, mid);
            MergeDownSort(sequence, mid + 1, right);
            List<int> temp = new List<int>();
            int i = left;
            int j = mid + 1;
            for (int step = 0; step < right - left + 1; step++)
            {
                    if ((j > right) || (i <= mid) && (sequence[i] < sequence[j]))
                    {
                        try
                        {
                            temp[step] = sequence[i];
                        }
                        catch
                        {
                            temp.Add(sequence[i]);
                        }
                        i++;
                    }
                    else
                    {
                        try
                        {
                            temp[step] = sequence[j];
                        }
                        catch
                        {
                            temp.Add(sequence[j]);
                        }
                        j++;
                    }
            }
            for (int step = 0; step < right - left + 1; step++)
            {
                sequence[left + step] = temp[step];
            }
            return 0;
        }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.05.2016, 11:48
Ответы с готовыми решениями:

IComparable для сортировки двусвязного списка
Как отсортировать с помощью IComparable? using System; using System.Collections.Generic;...

Сортировку односвязного списка переделать для двусвязного
Здравствуйте! Есть проблема в реализации сортировки под двусвязный список. Есть рабочая...

Написать функцию сортировки двусвязного списка
Здравствуйте, имеется такая структура данных, содержащая информацию о студенте: typedef struct...

Алгоритм сортировки слиянием
Ребятки помоги! Понять что здесь не так: public static IEnumerable&lt;T&gt; MSort&lt;T&gt;(this...

1
Эксперт .NET
17685 / 12871 / 3365
Регистрация: 17.09.2011
Сообщений: 21,136
23.05.2016, 16:19 2
Цитата Сообщение от Legend072 Посмотреть сообщение
Есть проблема с переписыванием алгоритма для двусвязного списка LinkedList
У вас код для сортировки слиянием обычного списка, а не двусвязного.

Цитата Сообщение от Legend072 Посмотреть сообщение
как это можно реализовать
Примерно как тут: Сортировка двусвязного списка
Надо только поменять условие с возрастающего на убывающее.
Или еще лучше передавать соответствующий IComparer.
0
23.05.2016, 16:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.05.2016, 16:19
Помогаю со студенческими работами здесь

Алгоритм сортировки слиянием на CUDA
Здравствуйте, начал изучать cuda попытался реализовать один из алгоритмов сортировки но вроде бы...

Переделать программу с использованием двусвязного списка (вместо односвязного)
Есть программа, которая содержит некоторые подпрограммы для работы с односвязным списком. Как...

алгоритм внешней сортировки простым слиянием
Дан файл содержащий следующие сведения о пассажирах поезда:фамилия масса багажа.упорядочить...

Ассемблерные вставки в C++. Алгоритм сортировки слиянием
Нужна помощь.Необходимо реализовать алгоритм сортировки слиянием по возрастанию из элементов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru