Форум: Форум C++Разное
Новые темы: 00
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: структуры
 
 автор: daym0n   (01.02.2008 в 03:17)   письмо автору
 
 

не понятен смыл работы с линейными списками. вот пример стурктуры где и как храняться данные?
struct Node{
int elem;
Node *next;
Node "prev;
};


я понимаю что это рекурсивые структуры, но не совсем понятен смысл как они работают.

  Ответить  
 
 автор: alex19921992   (01.02.2008 в 08:42)   письмо автору
 
   для: daym0n   (01.02.2008 в 03:17)
 

структуры не рекурсивные.
Данные хранятся в int elem;
Встречный вопрос: понимаете ли принцип работы стека или очереди?
Если нет, то почитайте про стек, это самое простое.
Иначе будет очень трудно и долго объяснять вам про список.

  Ответить  
 
 автор: daym0n   (01.02.2008 в 08:51)   письмо автору
 
   для: alex19921992   (01.02.2008 в 08:42)
 

ну предположительно я знаю что такое стек. мне просто интересно как данные храняться в таком виде?

  Ответить  
 
 автор: alex19921992   (01.02.2008 в 20:26)   письмо автору
 
   для: daym0n   (01.02.2008 в 08:51)
 

Ну просто валяются где-то в памяти, причем *next и *prev содержат адреса следующей и предыдущей ячейки данных. таким образом, мы, зная начало и конец списка можем по нему всему "пройти" и получить данные с каждого элемента.

  Ответить  
 
 автор: daym0n   (02.02.2008 в 02:36)   письмо автору
 
   для: alex19921992   (01.02.2008 в 20:26)
 

да понятно зачем здесь next и prev, не понятно как оно хранится, или структура представляет собой некий массив?

  Ответить  
 
 автор: alex19921992   (02.02.2008 в 10:16)   письмо автору
 
   для: daym0n   (02.02.2008 в 02:36)
 

Данная структура эквивалентна char Node[12]
причем node[0]...node[3] - это int
node[4]...node[7] - это prev
node8]...node[11] - это next

  Ответить  
 
 автор: alex19921992   (02.02.2008 в 10:16)   письмо автору
 
   для: daym0n   (02.02.2008 в 02:36)
 

Данная структура эквивалентна char Node[12]
причем node[0]...node[3] - это int
node[4]...node[7] - это prev
node[8]...node[11] - это next

  Ответить  
 
 автор: daym0n   (02.02.2008 в 13:14)   письмо автору
 
   для: alex19921992   (02.02.2008 в 10:16)
 

почему именно char Node[12]???

  Ответить  
 
 автор: alex19921992   (04.02.2008 в 06:48)   письмо автору
 
   для: daym0n   (02.02.2008 в 13:14)
 

потому что sizeof(int)=4
sizeof(Node*)=4
sizeof(Node*)=4

4+4+4=12 (байт)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования