Содержание
- 2. Литература Вирт Н. Алгоритмы+структуры данных = программы: Пер. с англ.-М.Мир,1985.-406 с., ил. Вирт Н. Алгоритмы и
- 3. Введение Структура данных – общее свойство информационного объекта, с которым взаимодействует та или иная программа. Это
- 4. Введение Любая структура на абстрактном уровне может быть представлена в виде двойки где D – конечное
- 5. Введение Основные виды (типы) структур данных: Множество – конечная совокупность элементов, у которой R=∅. Последовательность –
- 6. Введение Матрица – структура, у которой множество R состоит из двух отношений линейного порядка. Дерево –
- 7. Введение Вырожденные (простейшие) структуры данных называются также типами данных. Различают следующие уровни описания данных: абстрактный (математический)
- 8. Введение
- 9. Категории типов данных Встроенные типы данных, т.е. типы, предопределенные в языке программирования или языке баз данных.
- 10. Категории типов Указательные типы дают возможность работы с типизированными множествами абстрактных адресов переменных, содержащих значения некоторого
- 11. Встроенные типы данных В современных компьютерах к таким "машинным" типам относятся целые числа разного размера (2-8
- 12. Встроенные типы данных числа с плавающей точкой одинарной и двойной точности ( 4 и 8 байт
- 13. Встроенные типы данных Тип CHARACTER (или CHAR) в разных языках - это либо набор печатных символов
- 14. Уточняемые типы данных Type T = min..max; ПРИМЕРЫ Type year = (1900 .. 2001); digit =
- 15. Перечисляемые типы данных TYPE T = (C1,C2,...,Cn) где Т — идентификатор нового типа, Ci — идентификаторы
- 16. Перечисляемые типы данных ПРИМЕРЫ: Type color = (red, yellow, green); destination = (hell, purgatory, heaven); Var
- 17. Массивы Type t = array [Ti] of To ; Type row = array [1.. 5] of
- 18. Массивы : array [n..k] of ;
- 19. Массивы var m1:array[-2..2] of real;
- 20. Массивы Количество байтов непрерывной области памяти, занятых одновременно вектором, определяется по формуле: ByteSise = ( k
- 21. Массивы Обращение к i-тому элементу вектора выполняется по адресу вектора плюс смещение к данному элементу. Смещение
- 22. Массивы Информация, содержащаяся в дескрипторе вектора, должна позволять, сократить время доступа, (A0 = @Имя - n*Sizeof(тип)
- 23. Массивы (многомерные) Var Mas2D : Array [n1..k1 , n2..k2] of
- 24. Массивы Количество байтов памяти, занятых двумерным массивом, определяется по формуле : ByteSize = (k1-n1+1)*(k2-n2+1) *SizeOf(Тип) Адресом
- 25. Массивы Смещение к элементу массива Mas[i1,i2] определяется по формуле: ByteNumber = [(i1-n1)*(k2-n2+1)+(i2-n2)] *SizeOf(Тип) его адрес :
- 26. Массивы Например: var Mas : Array [3..5] [7..8] of Word; Этот массив будет занимать в памяти:
- 27. Массивы для двумерного массива c границами изменения индексов: [B(1)..E(1)][B(2)..E(2)], размещенного в памяти по строкам, адрес элемента
- 28. Массивы для массива произвольной размерности: Mas[B(1)..E(2)][B(2)..E(2)]...[B(n)..E(n)] получим: Addr[I(1),I(2),...,I(n)]=Addr[B(1),B(2),...B(n)] + Sizeof(Тип)*∑ [B(m)*D(m)] + Sizeof(Тип)* ∑ [I(m)*D(m)] (m=1..n)
- 29. Массивы При вычислении адреса элемента наиболее сложным является вычисление третьей составляющей формулы, т.к. первые две не
- 30. Массивы Дескриптор массива, таким образом, содержит: начальный адрес массива - Addr[I(1),I(2),...,I(n)]; число измерений в массиве -
- 31. Массивы Представление массивов с помощью векторов Айлиффа Для массива любой мерности формируется набор дескрипторов: основного и
- 32. Массивы В Java имеется большое количество классов и интерфейсов для массивов и массивоподобных структур: Arrays, Vector,
- 33. Массивы В JDK 5.0 ArrayList был преобразован в универсальный класс с параметром типа. Массив, предназначенный для
- 34. Записи Запись - конечное упорядоченное множество полей, характеризующихся различным типом данных. type complex = record re:
- 35. Записи struct { float re; float im; } x, y; x=y; … struct { float r;
- 36. Записи var rec:record num :byte; { номер студента } name :string[20]; { Ф.И.О. } fac, group:string[7];
- 37. Записи Представление в виде последовательности полей, занимающих непрерывную область памяти АВТФ 8B50
- 38. Записи в виде связного списка с указателями на значения полей записи
- 39. Множества Множество - такая структура, которая представляет собой набор неповторяющихся данных одного и того же типа.
- 40. Множества Множество в памяти хранится как массив битов, в котором каждый бит указывает является ли элемент
- 41. Множества где @S - адрес данного типа множество.
- 42. Множества Число байтов, выделяемых для данных типа множество, вычисляется по формуле: ByteSize = (max div 8)-(min
- 43. Множества Например, S : set of byte; S:=[15,19]; Содержимое памяти при этом будет следующим: @S+0 -
- 44. Указатели Понятие указателя в языках программирования является абстракцией понятия машинного адреса. Подобно тому, как зная машинный
- 45. Динамическая память ( указатели ) Статическое распределение памяти Динамическое распределение памяти Os, Finder библиотеки Паскаля Исходный
- 46. Указатели Описание переменных типа указатель Type c = array [1..100] of real; Var p1 : ^integer
- 47. Указатели Процедуры работы с указателями: New ( p )- выделить память в Heap для переменной, на
- 48. Указатели p1 := p2; Dispose ( p1 ); Dispose ( p2 ); p1 p2 10 53
- 49. Указатели Обмен данными массивов Program DemoPointer; Const n=1000; Type mas = array [ 1..n] of integer;
- 50. Указатели begin New ( p1 ); New ( p2 ); for i :=1 to n do
- 52. Скачать презентацию