|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
20.03.2013, 17:23 | #1 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
С++, Список, односвязный список (?!)
Возникли вопросы по поводу создания списков.
1 - где можно прочитать про списки для С++? (Реализация списков) Павловскую ещё не листала, но в интернете путного пока что ничего не наблюдала. Если есть ещё какие-то книги по поводу, была бы очень признательна! 2 - списки всегда через классы создаются? 3 - если у меня должно быть несколько списков, которые будут содержать однотипные данные, их можно как-то приумножить, или все прописывать? например, у меня есть два списка. List1, List 2. каждый из этих списков имеет свои "записи", и эти записи у этих списков одинаковые. то есть, 1,2,3 - и в List1, и в List2. 4 - как думаете, возможно ли создать массив, ячейки которого будут и числами и ссылками\указателями\адресами на список? Охх, большое спасибо всем тем, кто сможет ответить на сим вопрос или вопросы! |
20.03.2013, 17:54 | #2 | ||||
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
Цитата:
Цитата:
Цитата:
Цитата:
(если такой вопрос дал препод - то он ждет услышать что размер массива надо определить при создании, а список может расти, поэтому скажите ему "нет", чтобы лишних вопросов не было, но сами на реализацию std::vector посмотрите) |
||||
20.03.2013, 18:07 | #3 | |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
Интересует "как создать списки при незнании устройства классов". Потому что, читаю пока в инете - всё через классы. А я понятия (пока что) не имею, что и как там потом с этими классами.
Если вы мне сможете привести пример (пусть даже самый-самый простой), я буду безгранично благодарна Вам)) окееей)) Цитата:
Мой преподаватель и так меня начинает подкалывать, что я извращенец программирования, но чувствую, это уже правда моя))) Так, это было лир. отступление. На самом деле, преподаватель ничего не спрашивает. Это я хочу для себя. У меня есть одна идея, но я (пока что) не знаю как её реализовать по другому, кроме как в двумерном массиве хранить и числа и адреса\ссылки\указатели на списки, в которых буду храниться одинаковые (для других групп списков) числа, чтобы там можно было легко удалять "варианты" (т.е., эти самые записи списка), и если запись одна - менять адрес на данные в записи. Да игру "судоку" пытаюсь типа реализовать)) *не совсем игру, скорее "как решить", при том, что не просто перебрать варианты, а именно что - решить. к тому же, это отличная, как мне показалось, тема для "использование списков в повседневной жизни программиста")) |
|
20.03.2013, 18:26 | #4 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Цитата:
Код:
|
|
20.03.2013, 18:33 | #5 |
Старожил
Регистрация: 16.12.2011
Сообщений: 2,329
|
|
20.03.2013, 18:43 | #6 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
Abstraction, всё великолепно, но это сейчас для меня "увидела оооот-такенную фигу")))
возникли ряды вопросов по этому приверу, и, если вы не потив, может разберём их? 1 - typedef void* List[2]; -- определение списка? это писать после инклудов, или где? 2 - void AddItem(List** l, void* item) -- функция по созданию списка, вижу, а переменные item и l - это какие переменные? тип, характер? И их, похоже, описывать надо в main'е. (о, я так даже понимаю, что item - число, а l - ссылка на следующую запись в списке?) 3 - но не могу тогда понять что это означает: Код:
Если у меня значения определённые, т.е., у меня не будет каких-то "фантастических записей с клавиатуры", как сделать начальный целый определённый заранее список и потом из него удалять? т.е., суть всей моей задумки - есть список, удаляем из него записи до такой степени, пока не останется 1 запись. Хах, моя задача даже сократилась до таких размеров, что только удалять. Даже не будет "добавить", только удалять, сравнивать и "думать")) |
20.03.2013, 18:46 | #7 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
Bers, спасибо вам! правда, там тоже есть "вопросы", но я читала его. Тоже "книга-фига", буду читать, значит, ещё раз))
|
20.03.2013, 19:40 | #8 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
Код:
Какая-то закономерность должна быть видна. Попробуйте оформить это для общего случая в виде процедур. Пример Abstraction Вас больше запутает чем что-то прояснит ) |
20.03.2013, 19:49 | #9 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
rrrFer, и я вижу, что он меня запутал, вот и мщу - мучаю вопросами
Хорошо, хорошо, вот я, допустим, мистическим образом создам список (чуть позже буду тут выкладывать коды), вопрос - как мне к списку обратиться в главной функции? (без разницы где, зачем) любое обращение, хоть к значению данной что-то прибавить, просто посмотреть что и как)) |
20.03.2013, 21:28 | #10 |
Форумчанин
Регистрация: 07.05.2011
Сообщений: 169
|
Так, начало типа положено, но там ошибки - что с Node'oм?
И head тоже... Я вижу, они не объявлены - а как их представить?)) Код:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создать односвязный список и вывести его на экран. Из этого списка создать новый список по указанному ниже правилу и новый список | San111 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 15.05.2012 22:08 |
Односвязный список | ZavriK | Помощь студентам | 2 | 02.05.2012 22:27 |
Необходимо реализовать классы, односвязный список для хранения целых чисел, односвязный список для хранен | lineico | Помощь студентам | 2 | 09.05.2011 17:45 |
Односвязный список | masha17 | Общие вопросы C/C++ | 1 | 09.12.2009 12:20 |
C++. Односвязный список. Уничтожить список | Olya90 | Помощь студентам | 2 | 10.06.2009 18:52 |