Форум программистов, компьютерный форум CyberForum.ru

Кольцевой двунаправленный список - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить, имеется ли среди чисел a, b, c хотя бы одна пара взаимно противоположных чисел http://www.cyberforum.ru/cpp-beginners/thread295473.html
Напишите пожалуйста вкратце хотя бы программу. Благодарю заранее
C++ Vector Помогите пожалуйста понять как обращатся к переменным членам класса через vector пример: #include<iostream> #include<vector> using namespace std; class Ab { public: http://www.cyberforum.ru/cpp-beginners/thread295455.html
Найти произведение положительных элементов массива C++
Написать программу на с++ В одномерном массиве, который состаит из n вещественных элементов, вычислить: 1) произведение положительных элементов массива; 2) сумму элементов массива, расположенных к минимальному элементу. Упорядочить по росту отдельно элементы, которые стоят на парных местах, и элементы, которые стоят на непарных местах. Помогите, пожалуйста, очень надо!!!
C++ кто может составить алгоритм к программе?
кто сможет составить алгоритм к данной программе?;) вот задание: В клетки квадрата размером n х n вписаны произвольно n2 первых чисел натурального ряда (n<7). От левой верхней клетки до правой нижней прокладываются маршруты, причем клетка старта и клетка финиша включаются в них, а разрешенными направлениями движения считаются два: на 1 клетку вниз и на 1 клетку вправо. Составить программу...
C++ дана целочисленная прямоугольная матрица http://www.cyberforum.ru/cpp-beginners/thread295426.html
определить -сумму элементов в тех строках,которые содержат хотя бы один отрицательный элемент -номера строк и столбцов всех седловых точек матрицы ПРИМЕЧАНИЕ Матрица А имеет седловую точку Аij,если Aij является минимальным элементов в i-ой строке и максимальным- в j-ом столбце может кто написать программный код используя только #include<stdio.h>
C++ одномерный массив Помогите пожалуйста создать одномерный массив целых чисел используя датчик случайных чисел??? подробнее

Показать сообщение отдельно
Jtalk
93 / 79 / 4
Регистрация: 13.05.2011
Сообщений: 279
14.05.2011, 19:59     Кольцевой двунаправленный список
Цитата Сообщение от Jaksn Посмотреть сообщение
Да я искал в интернете, но что-то так и не могу четко понять. Можешь разъяснить подробно как работать со списками, а то вообще засада у меня с ними.
Что конкретно непонятно? Что такое указатели известно? Список - это набор ячеек, соединенных между собой посредством указателей (каждая ячейка содержит указатель на следующую ячейку - как минимум -, и на предыдущую, если список двусвязный). То, что список кольцевой, означает, что указатель на следующую ячейку последнего элемента указывает на первый элемент списка (а указатель на предыдущий элемент первого элемента списка указывает на последний элемент).

Заглавное звено - это специальный элемент списка, указывающий на первый элемент. Он не хранит данные а лишь служит для упрощения доступа к списку, указывая на ячейку, с которой начинается построение списка.

Вот описание ячейки списка:

C++
1
2
3
4
5
struct item
{
    item* next,prev; //указатель на следующий и предыдущий элемент
    storage_type* storage; //указатель на данные в ячейке
}
Соответственно, обход списка осуществляется по принципу

C++
1
2
3
4
item* current; //ранее инициализированный текущий элемент списка. Идентификатор типа \
оставлен для понятности
current = current->next; //теперь current указывает на следующую ячейку списка.
current->storage; //а тут извлекаем значение из текущей ячейки
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru