Динамические структуры

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
Аватара пользователя
Vladimir89
Сообщения: 75
Зарегистрирован: 21 май 2007, 02:25

05 ноя 2007, 16:20

У меня есть проблема именно с понимание этого явления.
Тоесть как я понимаю это когда например в том же классе лпределен еще класс? я правильно понимаю?
И еще чем отличаютьсяочередь от листа? И что такое Стек?
Книжки смотрел но нифига там не понял, к тому же там написано для шаблонов а мне нужно просто так пока что. Помогите мне с теорией (или хотябы дайте ссылку где можно прочитать или хз что)
Albor
Сообщения: 482
Зарегистрирован: 06 сен 2004, 13:34
Откуда: Днепропетровск

05 ноя 2007, 17:04

Стек: первым пришёл - последним ушёл, то есть, добавленые данные в стек извлекаются в обратном порядке, например: помещаем в стек последовательно 1, 2, 3, 4, а присчитывании получаем 4, 3, 2, 1, причём, считанные данные удаляются из стека. Очередь - из названия понятно, первым встал, первым ушёл, но, хочу заметить, что очередь может быть с приоритетом и здесь уже не всё будет зависеть только от порядка поступления. Список - каждый элемент списка содержит указатель на следующий, то есть, доступиться к данным в N-ом элементе списка, можно только пройдясь по всем предыдущим элементам, опять-же, список может быть двунаправленным, то есть, каждый последующий элемент списка будет содержать указатели на следующий и предыдущий. По такому списку можно двигаться и вперёд и назад. Каждый из вышеперечисленных структур может быть реализован в виде одного класса-контейнера, элементами которого является структура или класс, представляющие 1 элемент контейнера. Вот так - в двух словах.
Аватара пользователя
Vladimir89
Сообщения: 75
Зарегистрирован: 21 май 2007, 02:25

05 ноя 2007, 19:47

а что такое эти 1 2 3 4 ? Классы? int ?
Аватара пользователя
Vladimir89
Сообщения: 75
Зарегистрирован: 21 май 2007, 02:25

06 ноя 2007, 04:12

Так а кто обьяснит что такое Итератор? Моск взрывается нах.
Albor
Сообщения: 482
Зарегистрирован: 06 сен 2004, 13:34
Откуда: Днепропетровск

06 ноя 2007, 12:07

1,2,3, 4 - это пример. Данные можно помещать любые, под которые расчитан стек или список...
Итератор -это что-то вроде указателя, при помощи которого можно перемещаться по контейнеру. Подробнее в книгах.
Аватара пользователя
Vladimir89
Сообщения: 75
Зарегистрирован: 21 май 2007, 02:25

13 ноя 2007, 04:41

Смотрю в книгу вижу фигу. У Страуструпа (того что удалось найти), Шилдта нету.
Если бы у меня была книга где это было бы толково написано то... я бы тут никому не пудрил мозги!
А лекции по которым я должен был все это писать они... эээээ они писались на 5 паре, тоесть лекциях сидел пнем неразборчиво списывал что то с доски... вот и страдаю теперь.
Си ++
Здоровье --
Аватара пользователя
WinMain
Сообщения: 913
Зарегистрирован: 14 янв 2005, 10:30
Откуда: Москва
Контактная информация:

13 ноя 2007, 11:36

Есть хорошая книга Н. Джосатиса, называется "Стандартная библиотека С++". Там описаны все эти динамические контейнеры и алгоритмы работы с ними. Есть много других аналогичных книг по STL. У Страуструпа в книге по С++ нет описания STL.
Аватара пользователя
Romeo
Сообщения: 3091
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

23 ноя 2007, 10:58

Да человеку не столько STL нужен, насколько я понял, сколько обычная теория алгоритмов. Советую при поиске в интернету использовать именно это словосочетание.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Аватара пользователя
Vladimir89
Сообщения: 75
Зарегистрирован: 21 май 2007, 02:25

24 ноя 2007, 16:37

OK попробую
Си ++
Здоровье --
Ответить