2 / 2 / 1
Регистрация: 09.02.2011
Сообщений: 49
|
|
1 | |
Реализовать односвязный список, в котором бы логика обхода его элементов задавалась бы пользователем.06.04.2011, 15:57. Показов 2394. Ответов 22
Метки нет Все метки)
(
Реализовать односвязный список, в котором бы логика обхода его элементов задавалась бы пользователем. В качестве примера использовать случай, когда хранятся элементы целого типа, а пользователю необходимо три варианта обхода:
* все элементы слева-направо * только четные элементы слева-направо * все элементы, но только справа-налево Добавлено через 5 часов 23 минуты кто подскажет(
0
|
|
06.04.2011, 15:57 | |
Ответы с готовыми решениями:
22
Создать класс «Квартира», в котором список комнат реализовать как односвязный список Что такое односвязный список и как его реализовать Реализовать односвязный список и обеспечить его сортировку по одному из полей структуры. Сформировать односвязный список, вывести на консоль отрицательные значения его элементов |
В астрале
![]() 8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
06.04.2011, 18:40 | 2 |
DiabloRossi, Можно замутить шаблонную стратегию обхода...
Между прочим в односвязном списке обход с лева-направо и справа-налево это крайне интересно. Как вы себе это представляете?)
0
|
2 / 2 / 1
Регистрация: 09.02.2011
Сообщений: 49
|
|
06.04.2011, 18:59 [ТС] | 3 |
Собственно, лично я это никак не представляю)
это задание такое, которые я совершенно не знаю, как делать)
0
|
![]() 5054 / 3114 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
06.04.2011, 19:35 | 4 |
ForEveR, извращенский способ - каждый раз начинать обход сначала и продвигаться вправо на один элемент меньше, чем на прошлой итерации. Сначала доходим до конца списка и выводим содержимое, затем до предпоследнего элемента и выводим содержимое и т.д.))
1
|
3 / 3 / 0
Регистрация: 31.03.2011
Сообщений: 20
|
|
06.04.2011, 19:48 | 5 |
DiabloRosi, мб ты условие задания не так скопировал??? наверное я чего не понимаю... но как в односвязном списке идти и слева на право , и справо на лево???? если кто в курсе я очень хочу тоже так делать ))) подскажите пожалуйста как????
0
|
![]() 5054 / 3114 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
06.04.2011, 19:50 | 6 |
0
|
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
|
|
06.04.2011, 19:51 | 7 |
Интересный способ )
0
|
3 / 3 / 0
Регистрация: 31.03.2011
Сообщений: 20
|
|
06.04.2011, 19:55 | 8 |
уахахахахахахахахахахахахахахахах...... так вот оно что это ....... терь понятно ..... реальное извращение............ забавная задачка........
Добавлено через 47 секунд я это не читал а следовало быть повнимательнее ))) а я то думал )).....
0
|
2 / 2 / 1
Регистрация: 09.02.2011
Сообщений: 49
|
|
06.04.2011, 20:16 [ТС] | 9 |
Условие я просто скопировал.) ничего не меняя)
Дак кто напишет этот ужас?)
0
|
В астрале
![]() 8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
||||||
06.04.2011, 21:38 | 10 | |||||
На тему стратегии обхода (печати). Можно замутить еще большую абстракцию путем использования шаблонного параметра списка в print-е...
Вроде бы не ошибся особо.
0
|
2 / 2 / 1
Регистрация: 09.02.2011
Сообщений: 49
|
|
06.04.2011, 21:42 [ТС] | 11 |
Расскажи в двух словах логику данной программы)
как в ней реализовано задание логики обхода пользователем?)
0
|
В астрале
![]() 8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
06.04.2011, 21:45 | 12 |
DiabloRossi, Шаблонным параметром, который работает со списком (в данном случае конкретным классом LinearListImpl). В этом шаблонном параметре (задающим обход) должен быть конструктор - который инициализирует список в классе обхода и функция обхода под названием print. Создаем список. Заполняем. Печатаем. Функция print в классе LinearList создает объект класса PS который является шаблонным параметром (стратегия обхода), передавая этому объекту уже построенный список, использует конструктор копирования списка внутри шаблонного класса и выводит список на экран. Достаточно прозрачно?
0
|
2 / 2 / 1
Регистрация: 09.02.2011
Сообщений: 49
|
|
06.04.2011, 21:50 [ТС] | 13 |
Смутно.
Вот это реализовано? * все элементы слева-направо * только четные элементы слева-направо * все элементы, но только справа-налево
0
|
В астрале
![]() 8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
06.04.2011, 21:51 | 14 |
DiabloRossi, нет) мне просто было интересно написать класс списка с шаблонным параметром стратегии обхода.
0
|
![]() 5054 / 3114 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
06.04.2011, 21:51 | 15 |
Кстати на тему печати справа налево - рекурсией элементарно решается, в три строчки.
1
|
2 / 2 / 1
Регистрация: 09.02.2011
Сообщений: 49
|
|
06.04.2011, 21:52 [ТС] | 16 |
0
|
В астрале
![]() 8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
|
|
06.04.2011, 21:52 | 17 |
silent_1991, Скинь пример в личку или приведи тут - интересно, а думать лень)
0
|
2 / 2 / 1
Регистрация: 09.02.2011
Сообщений: 49
|
|
06.04.2011, 21:57 [ТС] | 18 |
Дыа)
Допишите предыдущий код и будет отлично) Добавлено через 3 минуты По идее мне завтра вечером край уже надо сдать( ![]()
0
|
![]() 5054 / 3114 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
||||||
06.04.2011, 22:06 | 19 | |||||
ForEveR, к примеру:
2
|
2 / 2 / 1
Регистрация: 09.02.2011
Сообщений: 49
|
|
07.04.2011, 15:50 [ТС] | 20 |
Блин, схелпуйте кто-нить..
0
|
07.04.2011, 15:50 | |
Помогаю со студенческими работами здесь
20
Переделать программу, чтобы скорость вращения задавалась пользователем Реализовать односвязный список и вектор Реализовать односвязный список студентов Односвязный кольцевой список, реализовать Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |