|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
20.02.2009, 15:05 | #1 |
Форумчанин
Регистрация: 19.02.2009
Сообщений: 622
|
Имеется однонаправленный неоднородный (гетерогенный) список с однородными подсписками.
Для данного списка нужно разработать следующие подпрограммы: 1) Добавление элемента - в начало списка; - в конец списка; - после элемента с заданным номером. 2) Печать списка (вывод на экран дисплея): - номера элемента; - содержимое поля данных. 3) Удаление элемента из списка: - из начала; - из концаж - с заданым номером. 5) Запись списка в файл. 6) Уничтожение списка. Восстановление (чтение) списка из файла. Пожалуйста помогите кто может. Можно число К (количества типов в списке) взять определенное (например 3 или 4 и т.д.), тогда задача немного упрощается.
Жми на весы!!!
Последний раз редактировалось Stilet; 24.02.2009 в 09:24. |
21.02.2009, 08:06 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
1) и в чём сложность то? Задача, по сути, - несложная!
и даже при произвольном K Правда, есть проблемы в оптимальном решении, но, если решать задачу "в лоб", при вставке элемента перебирать весь список, находя начало подсписка с нужным типом, тогда вообще элементарно всё (но не эффективно по быстродействию, конечно. Но кому оно нужно в учебной задаче то ;-) Либо отдельно заводить список "хвостов" по каждому подтипу... тогда для вставки элемента не прийдётся перебирать весь список.. короче, вариантов реализации алгоритма - вагон! 2) на каком языке реализуете решение? 3) а сами то что-нибудь сделали? Если нет - боюсь, что Вам прямая дорога во фриланс (за Вас всё напишут - только денюжку плати... ;-) |
24.02.2009, 05:01 | #3 |
Форумчанин
Регистрация: 19.02.2009
Сообщений: 622
|
!
Я сделал только для однородного списка (в списке хранятся элементы типа LongInt), оно все работает. А вот как сделать для неоднородного списка (чтобы в списке были элементы разного пипа) у меня не получается.
Код:
Жми на весы!!!
Последний раз редактировалось Stilet; 24.02.2009 в 09:25. |
25.02.2009, 04:59 | #4 |
Форумчанин
Регистрация: 19.02.2009
Сообщений: 622
|
???
Ну подскажите кто-нибудь как из однородного списка сделать неоднородный???
Жми на весы!!!
|
25.02.2009, 08:34 | #5 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Или можно еще применить указатели. Вот например: Код:
I'm learning to live...
Последний раз редактировалось Stilet; 25.02.2009 в 08:47. |
|
25.02.2009, 15:08 | #6 |
Форумчанин
Регистрация: 19.02.2009
Сообщений: 622
|
Stilet, а можешь еще объяснить, что такое pointer и процедура getmem(...)
Жми на весы!!!
Последний раз редактировалось Chudo4258; 25.02.2009 в 15:11. |
25.02.2009, 15:14 | #7 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
хы. А в хелп?
Pointer - это тип указателя. Он содержит адрес на ячейку памяти с которой начинается какой нить блок дайнных. Getmem - вписывает в Поинтер указатель на блок памяти зарезервированный для тебя с указанным размером.
I'm learning to live...
|
25.02.2009, 15:25 | #8 |
Форумчанин
Регистрация: 19.02.2009
Сообщений: 622
|
Что-то ничего не понятно.
А можешь на моих процедурах показать как создается гетерогенный список???
Жми на весы!!!
|
25.02.2009, 15:46 | #9 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
хм... Чесно говоря по-моему твои процедуры ниразу не годятся для такого.
Тут я бы на твоем месте почитал бы (как бы это банально не звучало) литературу про указатели. А потом я не очень пойму что ты имееш ввиду под неоднородным списком - это обычный массив Variant, займись им коли указатели пока понять сложно. Если ты на Делфи пишеш то вот пример с Вариантом: Код:
Кста твоя прога их активно пользует.
I'm learning to live...
|
25.02.2009, 16:14 | #10 |
Форумчанин
Регистрация: 19.02.2009
Сообщений: 622
|
список неоднородный - это значит в нем могут хранится элементы разных типов (напрмер: integer, char ...).
Жми на весы!!!
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Список на Си | Annenen | Помощь студентам | 21 | 20.12.2010 18:54 |
Данные-проверка-список (список на другом листе) | Inbox | Microsoft Office Excel | 7 | 26.12.2008 01:43 |