0 / 0 / 0
Регистрация: 26.02.2017
Сообщений: 14

Сортировка односвязного линейного списка по алфавиту

20.01.2020, 00:05. Показов 4106. Ответов 7

Студворк — интернет-сервис помощи студентам
Всем здравствуйте!
Имеется линейный список. Помогите, пожалуйста, написать сортировку студентов этого списка по фамилии. То есть, в алфавитном порядке.
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
struct Student
{
    char lastName[30];             
    char name[30];                        
    char secondName[30];              
    int gruppNum;                              
    int note[5];                            
    void Input(Student &student);          
    Student *Next;                          
};
 
class List
{
    Student *Head;                     
    
    int size;
public:
    List() :Head(NULL) {};          
    ~List();                             
    void DeleteNode(int n);
    void Add(Student &student);             
    void Show(Student *head);                           
    void Pop(int m);
    void Search();
};
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
20.01.2020, 00:05
Ответы с готовыми решениями:

Спроектировать шаблон класса spisok для реализации односвязного линейного списка. Не работает сортировка
Здравствуйте! Очень нужна помощь в реализации программы. Задание: Спроектировать шаблон класса spisok для реализации односвязного...

Ввод вложенного односвязного линейного списка
Помогите, пожалуйста разобраться с вводом вложенного односвязного линейного списка. Вот хотя бы на таком примере структур: struct...

Проход по элементам односвязного линейного списка
Допустим у меня существует класс линейного односвязного списка. Надо пройти по его элементам и присвоить каждому соответствующее...

7
Заблокирован
20.01.2020, 04:25
Цитата Сообщение от Mrum Посмотреть сообщение
Student *Head;
Цитата Сообщение от Mrum Посмотреть сообщение
void Show(Student *head);
у этого Змея-Горыныча разные головы?
0
0 / 0 / 0
Регистрация: 26.02.2017
Сообщений: 14
20.01.2020, 08:34  [ТС]
На самом деле, нет...
Я экспериментировал и не убрал. Там просто void Show();
0
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
20.01.2020, 10:17
Цитата Сообщение от Mrum Посмотреть сообщение
Имеется линейный список. Помогите, пожалуйста, написать сортировку студентов этого списка по фамилии. То есть, в алфавитном порядке.
Односвязный список на месте не отсортируешь. В него нужно добавлять в определённую позицию - Очередь с приоритетами, добавление и удаление
Т.е. тебе нужно добавить метод void AddSorted(Student &student);, и скопировать данные в новый список с использованием этого метода
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,536
Записей в блоге: 1
20.01.2020, 11:42
oleg-m1973, с чего бы это? Отсортировать можно всё что угодно. Зачем копипастить чей-то чужой код, если всегда можно легко написать свой собственный? Для такой темы как "списки" времени уйдёт куда больше на разборки в чужом коде, чем на халявное написание своего!
0
0 / 0 / 0
Регистрация: 26.02.2017
Сообщений: 14
20.01.2020, 20:16  [ТС]
Подниму, может, кто откликнется.
Я попробовал по аналогии из oleg-m1973, но, честно, не разобрался в коде.
0
Заблокирован
20.01.2020, 20:35
добавьте функцию нахождения указателя на N-й элемент, пригодится
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
20.01.2020, 20:41
Все знают решение, но никто не хочет писать потому что 1) "напишите все за меня" топик. 2) Списки в приличном обществе не сортируют, так как выходит квадратичная сложность.

Подсказываю - "Сортировка пузырьком". Если два идущих друг за другом элемента идут в не отсортированном порядке, меняете их местами. Повторяете пока есть что менять местами. Если классы писать умеете, то и закодить такой алгоритм должны суметь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.01.2020, 20:41
Помогаю со студенческими работами здесь

Гайд по сортировке односвязного линейного списка
Посоветуйте пожалуйста толковый гайд по сортировке. Уже столько всего перерыл, прочитал, но понять алгоритм не получается Добавлено...

Удалить из односвязного линейного списка определенный узел
Построить односвязный список из входной последовательности целых чисел. Написать программу, которая удаляет из линейного списка входной...

Найти наименьший элемент односвязного линейного списка
Найти наименьший элемент односвязного линейного списка. Сценарий: обходя список найти минимальное значение поля Data. Прошу помогите, ума...

Задать двумерный массив с помощью линейного односвязного списка
Помогите решить задачу: "Задать двумерный массив с помощью линейного односвязного списка". Может кто знает, буду очень благодарен!

Реализовать стек вещественных чисел на основе односвязного линейного списка
Реализовать стек вещественных чисел на основе односвязного линейного списка написать программу


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

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

Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru