Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Списки: основные виды и способы реализации




Список представляет собой множество, между элементами которого установлено отношение «предыдущий-следующий». Можно сказать, что линейный список – это последовательность однотипных элементов, т.е. множество элементов, для которого установлен линейный порядок следования элементов друг за другом. Каждый элемент списка представляется записью, состоящей из двух полей. В первом поле размещается сам элемент, а во втором – указатель на следующую запись. Указатель – это переменная, значениями которой являются адреса памяти. Для последнего в списке элемента во втором поле помещают указатель с «пустым» значением Nil (тупик).

Для обозначения линейных списков обычно используют рисунки.

 

Для работы с линейными списками достаточно знать указатель на первый элемент списка. Линейные списки бывают следующих видов:


· обычные,

· циклические (круговые),

· дважды связанные (симметрические),

· циклические дважды связанные.

К специальным видам линейных списков относятся стеки и очереди. Это динамические структуры данных, которые часто используют в программировании для определения порядка выполнения подзадач. Стек – это линейный список, в котором все включения и исключения производятся на одном конце списка, называемом вершиной стека («последним пришел – первым ушел»). Очередь – это линейный список, в котором все включения производятся на одном конце списка (в конце очереди), а все исключения – на другом его конце (в начале очереди) («первым пришел – первым ушел»).


К основным операциям над линейными списками относятся:

· Создание списка;

· Подсчет узлов (элементов) списка;

· Доступ к узлу;

· Конкатенация (соединение) списков;

· Поиск минимального (максимального) элемента, суммы, произведения;

· Изменение чисел в списке;

· Исключение (включение) узла;

· Разбиение списка;

· Упорядочение узлов и др.

К основным способам реализации операций над линейными списками относятся:

· Итерационный алгоритм;

· Рекурсивный алгоритм.

В языке Pascal для работы со списками используют данные типа record (запись), типизированные и нетипизированные указатели, адресный оператор @, символ ^, который помещают после имени указателя и процедуры New и Dispose, соответственно выделяющую память под динамически размещаемую переменную и освобождающую память.

 

 

Вопросы для экзамена по курсу "Технология программирования"

 

Вопросы для экзамена по курсу «Технология программирования»

1. Технология программирования и основные этапы ее развития

2. Технологии COM, OLE-automation, ActiveX, CORBA, CASE. Проблемы разработки сложных программных систем (ПС)

3. Блочно-иерархический подход к созданию сложных систем (СС)

4. Жизненный цикл и этапы разработки программного обеспечения

5. Оценка качества процессов создания программного обеспечения

6. Понятие технологичности программного обеспечения

7. Два способа декомпозиции ПО. Модули и их свойства. Сцепление модулей

8. Модули и их свойства. Связность модулей. Библиотеки ресурсов

9. Основные понятия программирования. Этапы решения задачи на компьютере

10. Алгоритм и его свойства. Средства описания структурных алгоритмов

11. Описание алгоритмов с помощью псевдокодов, Flow-форм, диаграмм Насси-Шнейдермана

12. Стиль оформления программы. Правила оформления модулей.

13. Введение в Pascal. Главное окно и главное меню IDE Delphi

14. Технология работы с консольными приложениями

15. Основные понятия языка Pascal. Структура программы. Операторы ввода-вывода данных

16. Типы данных. Простые типы данных

17. Типы данных. Стандартные типы данных

18. Типы данных. Пользовательские типы данных

19. Структурированные типы данных (строки, массивы, множества)

20. Структурированные типы данных (записи, файлы). Работа с текстовыми файлами

21. Другие типы данных (указатели, процедурные типы, вариантные типы)

22. Выражения, операнды, операции

23. Простые операторы

24. Структурные операторы (составной, условный, выбора)

25. Структурные операторы (цикла, доступа). Работа с массивами

26. Подпрограммы

27. Рекурсивные подпрограммы. Параметры и аргументы

28. Стандартные процедуры и функции

29. Модули в Pascal

30. Списки: основные виды и способы реализации

31. Жизненный цикл программы (каскадная модель, модель создания прототипов, спиральная модель)

32. Постановка задачи, оценка осуществимости

33. Планирование, управление

34. Тестирование, обеспечение качества

35. Психология программирования, организация коллектива разработчиков

36. Документирование

37. Сопровождение, реинжиниринг

38. Управление качеством

39. Стандарты ISO

40. Стандарт CMM

41. CASE-технологии

42. Технология программирования встроенных систем реального времени

43. Технология CUDA

 

 

Для заочников обязательными являются лекции 1, 5 – 15 (вопросы по материалу этих лекций включены в экзаменационные билеты). В лекциях 8 – 15 излагаются принципы работы с интегрированной средой Turbo Delphi, технология работы с консольными приложениями и основы языка программирования Delphi (Pascal).

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...