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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 18, средняя оценка - 4.61
maSt
5 / 5 / 1
Регистрация: 28.02.2010
Сообщений: 166
#1

Массив списков, как создать? - C++

24.12.2012, 13:16. Просмотров 2904. Ответов 6
Метки нет (Все метки)

У меня есть структура такого типа
C++
1
2
3
4
5
6
class Lancuch
{
public:
    char cos;
    Lancuch * nastepny;
};
И массив структур.
C++
1
    Lancuch * elem= new Lancuch[n];
А как для каждого элемента массива создать односвязный список и запомнить его начало?

Я пытался написать сначала для одного списка,а потом переделать под массив , но ничего не работает.
Особенно не работает когда я пытаюсь создать еще один массив для хранения в нем указателя на начало каждого списка.

Добавлено через 1 час 4 минуты
Перерыл все просторы интернета , ничего внятного на этот счет нету(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2012, 13:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Массив списков, как создать? (C++):

List и Vector, создать массив списков и перебрать все элементы - C++
Как с помощью List и Vector создать массив списков, и пробежаться в нем по всем элементам?

Как создать динамический массив типа string? Как создать класс такого массива? - C++
Как создать динамический массив типа string? Как создать класс такого массива? =-O Помогите, пожалуйста, очень нужна помощь!

Как из двух однонаправленных списков создать третий, который состоит из нечетных элементов предыдущих двух? - C++
ребят,подскажите пожалуйста как из двух однонаправленных списка создать третий который состоит из нечетных елементов преведущих двух....

Массив и память. Как создать динамический массив? - C++
не могу исправить ошибки. И нужен динамический массив я что-то попробовала для его создания но ничего не вышло #include "stdafx.h" ...

Шаблон класса: из двух списков создать один - C++
Помогите найти ошибку. Текст задачи: Составить программу, которая формирует список L включив в него по одному разу элементы, которые...

Создать меню с 6-ю элементами с помощью классов и списков - C++
Нужно создать меню с 6-ю элементами с помощью классов и списков. 1.<что-то> 2.<что-то> 3.<что-то> 4.<что-то> 5.<что-то> 6....

6
Alex_pac
1284 / 690 / 8
Регистрация: 25.05.2011
Сообщений: 2,158
Записей в блоге: 51
24.12.2012, 13:22 #2
храни в векторах
0
taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
24.12.2012, 13:26 #3
maSt, массив списков есть массив указателей на их первые элементы, или самих первых элементов в зависимости от того, могут ли списки быть пустыми.
0
maSt
5 / 5 / 1
Регистрация: 28.02.2010
Сообщений: 166
24.12.2012, 13:36  [ТС] #4
Цитата Сообщение от taras atavin Посмотреть сообщение
maSt, массив списков есть массив указателей на их первые элементы, или самих первых элементов в зависимости от того, могут ли списки быть пустыми.

То есть, если я заполняю списки в массиве так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    cin >> numer;
            cin >> p;
            if (elem[numer]==NULL) 
            {
                elem[nomer].cos=p;
                elem[nomer].sled=NULL;
            }
            else
            {
                elem[nomer].sled = new Lancuch;
                elem[nomer] = elem[nomer].sled ;
                elem[nomer].cos=p;
                elem[nomer].sled=NULL;
 
            }
То для того чтобы вывести начиная с первого элемента я должен буду написать
C++
1
while(elem[nomer]!=NULL)
?
И посмотрите пожалуйста как я заполняю список в этом массиве. По логике все должно работать, на практике ничего не работает.
0
Avazart
Эксперт С++
7213 / 5385 / 286
Регистрация: 10.12.2010
Сообщений: 23,806
Записей в блоге: 17
24.12.2012, 13:37 #5
Цитата Сообщение от Alex_pac Посмотреть сообщение
храни в векторах
В таком случае придется определить конструтоРы и оператор =
0
maSt
5 / 5 / 1
Регистрация: 28.02.2010
Сообщений: 166
24.12.2012, 14:22  [ТС] #6
И почему при записи
C++
1
elem==NULL
все идет нормально
а при
C++
1
elem[nomer]==NULL
какая между этим разница?
И там, и там я проверяю есть ли эллемент , но как я вижу что-то тут не так

Добавлено через 29 минут
Черт, я просто в ступоре. Если кто знает хорошую статью об этом, то скиньте пожалуйста.
0
OhMyGodSoLong
~ Эврика! ~
1244 / 993 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
24.12.2012, 15:57 #7
Ну, это... Просто список — это указатель на Lancuch. То есть вам надо массив указателей на Lancuch.
C++
1
2
3
typedef Lancuch *List;
// ...
List* = new List[n];
Пустой список, соответственно, это NULL.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2012, 15:57
Привет! Вот еще темы с ответами:

Указатель на массив списков - C++
здравствуйте.не очень понятна одна вещь-указатель на массив списков.т.е. пытаюсь сделать вот так ITEM table=new ITEM; и всевозможные...

Создать список с указателями на поля из двух других списков - C++
Здравствуйте. Есть два списка состоящие из структуры, как поля данных и класса, как указателей на структуру. Есть третий список, который...

Создать модель файловой системы на основе связанных списков - C++
доброго времени суток, форумчане!!! В сентябре получил задание на курсовой проект по СПО: "Файловая система использующая связанные...

Стек-массив динамических списков - C++
Препод домашку такую дал. Боюсь неправильно его понять) Каким образом его реализовать?. Я так понимаю, к каждому индексу массива должна...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
24.12.2012, 15:57
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru