Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.77/123: Рейтинг темы: голосов - 123, средняя оценка - 4.77
Skies
0 / 0 / 0
Регистрация: 30.06.2012
Сообщений: 23
1

Связные списки

06.09.2012, 02:07. Просмотров 22726. Ответов 12
Метки нет (Все метки)

Доброго времени суток. И у меня такая проблема - не могу разобраться со связными списками.
Не могли бы вы помочь мне с этим, допустим, привести в пример какую-нибудь структуру и показать пример создания\удаления списка, добавление\удаление элемента списка и еще какие нибудь действия со списками и структурами.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.09.2012, 02:07
Ответы с готовыми решениями:

Связные списки
Вот есть код все работает отлично но препод сказал что-бы при вводе элементов в...

Связные списки
Друзья, помогите исправить код!!! Программа описывет таблицу о...

Связные списки
12. Использовать (линейные) однонаправленные списки без заглавной звена (рис....

связные списки
12. Використовувати (лінійні) односпрямовані списки без заголовної ланки (мал....

Связные списки
Помогите пожалуйста осуществить в программе вот такие вот действия: 1)...

12
defer
558 / 238 / 16
Регистрация: 29.11.2010
Сообщений: 800
06.09.2012, 02:18 2
В книге "Фридман. C++ архив программ" есть подробно прокомментированные примеры односвязного и двусвязного списка
0
Skies
0 / 0 / 0
Регистрация: 30.06.2012
Сообщений: 23
06.09.2012, 02:55  [ТС] 3
так-то да, но с классами еще не знаком поэтому эта книга для меня еще рановата
0
defer
558 / 238 / 16
Регистрация: 29.11.2010
Сообщений: 800
06.09.2012, 03:15 4
Цитата Сообщение от Skies Посмотреть сообщение
но с классами еще не знаком поэтому эта книга для меня еще рановата
Ну тогда вот пример на си
0
Вложения
Тип файла: rar Simple list.rar (4.3 Кб, 503 просмотров)
David Sylva
1294 / 956 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
06.09.2012, 12:43 5
Простенький пример реализации связного списка

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
44
45
46
47
48
49
#include <iostream> 
using namespace std; 
 
struct link 
{ 
    int data; 
    link* next; 
}; 
 
link* first = NULL; 
 
void additem(int d) // добавление элементов список
{ 
    link* newlink = new link; 
    newlink->data = d; 
    newlink->next = first; 
    first = newlink; 
} 
 
void display() // вывод на экран
{ 
    link* current = first; 
    while(current) 
    { 
        cout << current->data << endl; 
        current = current->next; 
    }  
}  
 
void del() // удаление элементов
{ 
    link* current = first; 
    while(current != NULL) 
    { 
        link* temp = current; 
        current = current->next; 
        delete temp; 
    }  
    cout << "Elementi Udaleni " << endl;
}
 
int main() 
{ 
    additem(13); 
    additem(12); 
    additem(11);  
 
    display();  
}
2
Skies
0 / 0 / 0
Регистрация: 30.06.2012
Сообщений: 23
06.09.2012, 17:03  [ТС] 6
а если мне нужно удалить один элемент без разрыва цепи, как это сделать?
0
David Sylva
1294 / 956 / 267
Регистрация: 17.05.2012
Сообщений: 2,687
06.09.2012, 17:24 7
Удаление элемента в Списке По этой ссылке тема обсуждалась
0
EricJForster
1 / 1 / 0
Регистрация: 10.06.2016
Сообщений: 32
Завершенные тесты: 1
04.07.2016, 16:15 8
Подскажите пожалуйста, а для чего они вообще нужны? ведь того же результата можно добиться гораздо более удобными и быстрыми способами...
0
_Ivana
3233 / 1861 / 234
Регистрация: 01.03.2013
Сообщений: 5,091
Записей в блоге: 5
04.07.2016, 16:18 9
Цитата Сообщение от EricJForster Посмотреть сообщение
ведь того же результата можно добиться гораздо более удобными и быстрыми способами...
подкупом или угрозами?
0
Новичок
Модератор
1504 / 974 / 463
Регистрация: 17.07.2012
Сообщений: 4,947
Завершенные тесты: 3
04.07.2016, 22:42 10
Цитата Сообщение от EricJForster Посмотреть сообщение
а для чего они вообще нужны?
Ну вставка и удаление работают за константное время в отличие от массивов...
1
fire_Rising
10 / 11 / 7
Регистрация: 11.05.2016
Сообщений: 113
04.07.2016, 23:42 11
EricJForster, ну не просто же так они существуют С массивами сделать тоже самое намного труднее, то же удаление элемента, здесь перенести указатель и удалить, а в массиве сдвигать весь массив + все это очень ресурсозатратно.

Добавлено через 1 минуту
Skies, советую посмотреть уроки Дениса Маркова на youtube, он подробно разбирает односвязный список без классов, сам смотрел и спокойно разобрался если что это не реклама.
1
ddfddf
0 / 0 / 1
Регистрация: 01.02.2015
Сообщений: 20
19.02.2017, 19:18 12
забавно, но он не печатает результат
0
vlisp
471 / 439 / 105
Регистрация: 10.08.2015
Сообщений: 1,486
Завершенные тесты: 1
03.04.2018, 00:54 13
Цитата Сообщение от defer Посмотреть сообщение
В книге "Фридман. C++ архив программ" есть подробно прокомментированные примеры односвязного и двусвязного списка
Кто-то запускал этот код например для двусвязного списка код у меня вылетает

Добавлено через 13 минут
разобрался, выявились фефекты фикции
0
03.04.2018, 00:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.04.2018, 00:54

Связные списки.
Всем привет ребят можете привести пример двусвязносго списка.

Связные списки
Я практически полный нуб в С++. Вот такая задача: В столовой предлагаются N...

Связные списки
Написать функцию, удаляющую из исходной строки заданный символ. Например,...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru