![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
Анисия |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 25 Пол: Женский Реальное имя: Анисия Репутация: ![]() ![]() ![]() |
Добрый день. Помогите разобраться с очередями и стеками. Как организовать очередь из n целых чисел. Пока взяла 5 чисел, это получается что надо сформировать массив. Посмотрите пожалуйста правильно сделала?
|
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата Изменить ссылки так, чтобы последний элемент очереди стал первым, первый – вторым, вто-рой – третьим и т.д. Мне всегда нравятся вот такие задания... Просто великолепно. А ничего, что для этого не надо менять никакие ссылки? Это задание вообще не надо делать. Это не очередь уже, вот в чем дело... Ты в очереди когда-нибудь стояла? Знаешь, что это? Это FIFO - "первым пришел, первым вышел". А ты что предлагаешь? Пришел кто-то последним, тут его раз, перекинуть в самое начало, а всех отодвинуть? Какая-то коррумпированная очередь у тебя. Не пойдет... Не предназначена для этого очередь. Чтоб первый стал последним - легко, для этого достаточно изъять элемент из очереди, и добавить его снова, он добавится в конец... С деком твоя операция тоже делается легко, поскольку там очередь - двухсторонняя, там можно брать элемент с любой стороны, и добавлять его тоже в любую сторону, хоть в "голову", хоть в "хвост", он предназначен для таких операций, рассчитан на них. А очередь, увы, нет...Поймите уже раз и навсегда: нельзя вообще лезть на уровень указателей, когда работаешь с очередью. Равно, как и с любой другой структурой данных. Твое дело при работе с очередями - запрограммировать 2 операции: Get (которая берет элемент из начала очереди), и Put (которая добавляет элемент в ее конец). Всё, ничего больше... Точно так же, как при работе со стеком никому в голову не придет менять указатели, все что надо - это Push/Pop, иначе это уже не стек, а простой список... |
![]() ![]() |
![]() |
Текстовая версия | 21.06.2025 2:16 |