0 / 0 / 0
Регистрация: 22.11.2009
Сообщений: 9
|
|||||||||||
1 | |||||||||||
Не могу понять в чем ошибка: реализация односвязного списка18.08.2010, 21:12. Показов 3113. Ответов 31
Метки нет (Все метки)
Добавлено через 3 минуты Программа должна выводить ключи всех элементов списка, но выводит она почему-то лишь один. Сдается мне, что проблема в реализации функции addList. Добавлено через 15 минут Спасибо, проблема решилась после модификации функции addList:
Добавлено через 8 минут Я имею в виду, чтобы не нужно было возвращать указатель на первый элемент снова.
0
|
18.08.2010, 21:12 | |
Ответы с готовыми решениями:
31
Удаление элемента списка, не могу понять в чем ошибка Не могу понять в чем ошибка Не могу понять в чём ошибка Не могу понять в чем ошибка! |
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
20.08.2010, 06:43 | 21 |
bobromet, а стек нужно обязательно сделать в виде структуры без методов, или можно сделать в виде (шаблонного) класса?
0
|
25 / 25 / 3
Регистрация: 06.03.2010
Сообщений: 59
|
||||||
20.08.2010, 23:05 | 22 | |||||
Nameless One, как точно не указано, да я и не уверен что знаю что такое шаблонный класс.
Подозреваю что что-то типа модели в mvc... понахватался всего вподряд а конкретно ничего не знаю +)) задача выглядит следующим образом:
view() и clear() сответственно на выходе должно быть следующее: 1 2 3 4 5 6 7 1 2 3 4 5 6 7 в принципе все уже работает, только у меня порядок на выходе сверху-вниз, 2 1 7 6 5 4 3 7 6 5 4 3 2 1 так что придется все равно думать над задачкой которую подкинул siger. Ума не приложу как без ввода новых переменных добится нужного. Блин.
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
21.08.2010, 00:28 | 23 |
bobromet, Просто сделать двусвязный список. В котором есть не только поле для Stack *last, но также есть Stack *prev.
0
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
21.08.2010, 05:54 | 24 |
Lavroff, это будет уже не стек
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
||||||
21.08.2010, 06:35 | 25 | |||||
bobromet, вот Вам стек строк на С++, придумайте, как под свои нужды переделать
1
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|||||||||||
21.08.2010, 06:47 | 26 | ||||||||||
Блин... Опоздал
Вот простейшая реализация шаблонного стека (если с шаблонами не понятно, удали все записи вида template<class T> и замени везде T типом, который тебе нужен):
Если ты хочешь вывести элементы в их порядке добавления, то это можно сделать с помощью двух стеков - выталкиваешь все элементы из первого стека во второй, потом выталкиваешь все элементы из второго, поочередно их распечатывая. Если ты хочешь сделать то, что тебе сказал siger (кстати, по-моему, он и не говорил, что тебе нужно использовать именно стек), то лучше всего будет написать очередь и использовать ее.
1
|
ForEveR
|
21.08.2010, 10:03
#27
|
Не по теме: Nameless One, Ну хм. Это логично, что двусторонний список - это не стек.
0
|
0 / 0 / 0
Регистрация: 22.11.2009
Сообщений: 9
|
|
21.08.2010, 13:33 [ТС] | 28 |
bobromet, потом я понял что через void делать нету смысла т.к. когда будем работать с классами это не понадобится
Я имею в виду, что функция без параметров будет.
0
|
25 / 25 / 3
Регистрация: 06.03.2010
Сообщений: 59
|
||||||
21.08.2010, 21:11 | 29 | |||||
Lavroff, я тоже хотел ввести новую переменную, но siger говорит не нужно.)
я ввел переменную в которую записывается следующий узел, потом когда нужно выдать результат откатываюсь на начало и уже тогда начинаю выдавать. Вот как я это сделал, может какому нибуть нубу вроде меня будет интересно. наверно это и есть двусвязный список
проходящим мимо нубам вот ссылка, там очень коротко и понятно про queue и stack. http://adorning.ru/2010/01/21/... and-queue/ с темплейтами еще не разобрался, но вскоре понадобится..недельки через две. lala_777, ты сам структуру используешь, то есть можно сказать уже работаешь с классом
0
|
Модератор
12458 / 7482 / 1753
Регистрация: 25.07.2009
Сообщений: 13,762
|
|
21.08.2010, 21:48 | 30 |
Да стек и самому не сложно сделать. Вот пример: https://www.cyberforum.ru/cpp/... post916931
0
|
25 / 25 / 3
Регистрация: 06.03.2010
Сообщений: 59
|
|
21.08.2010, 22:28 | 31 |
easybudda, я имел ввиду что есть такая библиотечка, ну что ненадо алгоритм ручками писать .)
0
|
В астрале
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
21.08.2010, 22:33 | 32 |
bobromet, В STL вообще много всего полезного имеется.
0
|
21.08.2010, 22:33 | |
21.08.2010, 22:33 | |
Помогаю со студенческими работами здесь
32
Не могу понять в чем ошибка Не могу понять, в чем ошибка Не могу понять в чем ошибка Не могу понять в чем ошибка Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |