![]() |
|
Модераторы: bsa |
![]()
|
|
| ArniLand |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 17.8.2008 Репутация: нет Всего: нет |
Нужно сделать лабораторную касательно линейных структур данных и их использование в подпрограммах. Пока есть время подготовится и выучить теорию. Примерно такое нужно знать, способы формирования списков(включение в конец списка), принципы формирования списка(однонаправленный список со значениями 1-го списка). Также не очень хорошо знаю о самих линейных структурах. Нужно сделать лабораторную на Си. Просьба кинуть ссылку теорию для чтения с примерами кода или подсказать в какой книжке неплохо расписано касательно выше описанного. Заранее спасибо.
|
|||
|
||||
| comcon1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 11.6.2005 Где: Москва ДАС-МГУ Репутация: нет Всего: 17 |
Для начала перечисли структуры, которые тебя интересуют. Список, Очередь, Стек, Очередь с двумя концами, Вектор. Что еще?
Вот смотри, есть википедия: http://en.wikipedia.org/wiki/Queue_%28data_structure%29 |
|||
|
||||
| ArniLand |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 17.8.2008 Репутация: нет Всего: нет |
comcon1, вот задание которое нужно сделать, и по нему прошу дать теорию чтобы разобраться. Нету ли на русском с примерами?
1. Создание из файла (с расширением .h). В файле описывается: – линейная структура данных в связанном представлении (список), элемент которой имеет тип согласно варианту (табл.1); – открытая подпрограмма (inline-функция) согласно варианту (табл.2). 2. Создание основного файла (с расширением .cpp), в котором необходимо: – включить заглавный файл с помощью директивы препроцессора include; – описать „подпрограмму_1” формирование элемента первого списка согласно варианту (табл.1); – описать „подпрограму_2” формирование второго списка согласно варианту (табл.2). При формировании используется inline-функция; – описать главную программу, в которой применяются описанные подпрограммы, то есть формируется первый список с помощью „подпрограммы_1” (количество элементов согласно варианту) и формируется второй список с помощью „подпрограммы_2”. Таблица 1 Тип данных элемента списков - char Количество элементов 1-го списка - 7 Первый список - Однонаправленный Способ формирования элемента 1-го списка - Включение в конец списка Таблица 2 Принцип формирования 2-го списка - Однонаправленного списка из значений элементов 1-го списка, которые не равняются символу ’а’ Способ формирования элемента 2-го списка - Включение к началу списка Назначение inline-функции - Проверка значения элемента списка на равенство символа ’а’ |
|||
|
||||
| comcon1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 838 Регистрация: 11.6.2005 Где: Москва ДАС-МГУ Репутация: нет Всего: 17 |
И где тут линейные структуры, кроме Списка?
Список - это структура: структура Элемент { указатель_на_Элемент ук; тип_элемента_списка эл; } все. ты должен хранить первый элемент. через указатели переходишь на любые другие элементы. соответственно сам понимаешь, как что удалять/добавлять/искать. какая теория? Теорию по типам данных имеет смысл читать, когда ты хочешь знать чем отличаются различные типы данных. Куда быстрее добавлять, где быстрее искать и т.д.. |
|||
|
||||
| ArniLand |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 17.8.2008 Репутация: нет Всего: нет |
а какая неплохая теория есть по структурам данным, по всем? интересует по Си
|
|||
|
||||
| world |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 2.10.2009 Где: Харьков Репутация: нет Всего: 12 |
Ну структуры данных они везде одни и теже
Лично я советую почитать 1.Алгоритмы: построение и анализ Т. Кормен, Ч. Лейзерсон, Р. Ривест 2.Фундаментальные алгоритмы на C++ Сэджвик Р. Эти книги - класика. --------------------
Say what you mean, and mean what you say. Robert Wilson Cody |
|||
|
||||
| ArniLand |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 227 Регистрация: 17.8.2008 Репутация: нет Всего: нет |
все равно как писать программу я не знаю. Вот раздобыл код программы написанной по выше указанному заданию, но пока не сильно могу его понять. Прошу, пожалуйста подскажите по каким темам пройтись в книге по программирование чтобы понять как работает программа и потом смочь объяснить каждую строчку в программе и самому уметь подобное написать. Программа написана по выше описанному заданию. На вопрос что конкретно мне не понятно - с кодом h. файла мне все ясно, но что делает программа в cpp. файле мне не понятно. Просьба подсказать что можно поэтому почитать. Выше указанная литература не подошла потому что не привязана к Си
Код h. файла
|
||||
|
|||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
ArniLand, односвязный список, это такой контейнер данных, каждый элемент которого содержит указатель на следующий. Т.е. односвязный список, это набор связанных структур типа:
Это сообщение отредактировал(а) bsa - 12.2.2010, 11:51 |
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
ArniLand, не используй чужой код, раз разобраться в нем не можешь. Напиши свой. Необходимые алгоритмы я тебе уже подсказал.
А так же почитай правила форума, в частности, пункт 14[/url] |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |