
- •1. Cтруктуры данных и алгоритмы
- •1.1. Понятие структур данных и алгоритмов
- •1.2. Информация и ее представление в памяти
- •1.3. Классификация структур данных
- •1.4. Операции над структурами данных
- •1.5. Структурность данных и технология программирования
- •2. Простые структуры данных
- •2.1. Числовые типы
- •2.1.1. Целые типы
- •2.1.2. Вещественные типы
- •1). Десятичное число 15.375;
- •2). Десятичное число -0.5;
- •3). Десятичное число -25.75;
- •4). Число 0.0;
- •5). Числа верхней и нижней границ положительного диапазона
- •2.1.3. Операции над числовыми типами
- •2.2. Битовые типы
- •2.3. Логический тип
- •2.4. Символьный тип
- •2.5. Перечислимый тип
- •2.6. Интервальный тип
- •2.7. Указатели
- •2.7.1. Физическая структура указателя
- •2.7.2. Представление указателей в языках программирования
- •2.7.3. Операции над указателями.
- •3. Статические структуры данных
- •3.1. Векторы
- •3.2. Массивы
- •3.2.1. Логическая структура
- •3.2.2. Физическая структура
- •3.2.3. Операции
- •3.3 Множества
- •3.3.1 Множества и математика
- •3.3.1.1 Способы задания множеств
- •3.3.1.2 Операции над множествами
- •3.3.1.3 Множественный тип и его свойства
- •3.3.1.4 Переменные и константы множественных типов
- •3.3.1.5. Выражения множественного типа
- •3.3.2. Представление множеств в памяти эвм
- •3.3.2.1. Числовые множества
- •3.3.2.2. Символьные множества
- •3.3.2.3. Множество из элементов перечислимого типа
- •3.3.2.4. Множество от интервального типа
- •3.3.2.5. Операции над множествами
- •3.4. Записи
- •3.4.1. Логическое и машинное представление записей
- •3.4.2. Операции над записями
- •3.5. Таблицы
- •3.6.2. О сложности алгоритмов
- •3.6.3. Сортировка подсчетом
- •3.6.4. Сортировка включением
- •3.6.4.1. Простое включение
- •3.6.4.2.Метод Шелла (модифицированный)
- •3.6.5. Сортировка извлечением
- •3.6.5.1.Простое извлечение
- •3.6.5.2.Древесная сортировка(модифицированный)
- •3.6.6. Сортировка обменами
- •3.6.6.1. Пузырьковая сортировка
- •3.6.6.2. Быстрая сортировка (Хоара) (модифицированный)
- •3.6.7. Сортировка слиянием
- •3.6.8. Сортировка распределением
- •3.6.8.1. Вырожденное распределение
- •3.6.8.2. Сортировка распределением
- •3.6.9. Сравнительный анализ
- •3.7. Операции логического уровня над статическими структурами. Поиск
- •3.7.1. Линейный (последовательный) поиск
- •3.7.2. Быстрый последовательный список
- •3.7.3. Дихотомический (бинарный) поиск
- •3.7.4. Интерполяционный поиск
3.3 Множества
3.3.1 Множества и математика
Понятие “множество” в математике является одним из основополагающих и поэтому считается неопределяемым(т.е. для него нет общепринятого определения). Содержание, смысл этого понятия можно лишь объяснить с помощью примеров и описания его свойств.Понятие о множестве можно получить представив себе некую совокупность объектов произвольной природы: абстрактных(числа, слова) или реальных(студенты в аудитории, столы там же, зачетные книжки). Однако не любая совокупность может считаться множеством, хотя любое множество является совокупностью. Объекты множестваобязательно должны отличаться друг от друга. В то же время в совокупности могут быть одинаковые объекты. Зачетки студентов группы 2-1 ФАУ - это множество. Столы, за которыми вы сидите, можно считать совокупностью, т.к. они практически одинаковы. Объекты множества принято называть элементами. Если некоторый объект Х является элементом множества М, то этот факт записывается Х∈ М. В общем случае количество элементов может быть конечным или бесконечным(пример-множество натуральных чисел). Имеет место и пустое множество, т.е. множество, не содержащее элементов. Пример:если М-множество действительных корней уравненияXP+1=0 , тоM=ø
3.3.1.1 Способы задания множеств
1-ый способ. Проще всего задать множество посредством указания общего свойства его элементов. Формально это можно записать так М={X|P(X)}, т.е. множество М представляет собой множество всех Х, обладающих свойством Р(Х).
Примеры:
1.Запись A={X|X-натуральное число} означает бесконечное множество А всех натуральных чисел.
2.Запись B={X|(X-1)*(X-2N)} означает конечное множество B, содержащее корни уравнения (Х-1)*(Х-2)=0
3.Запись C={X|(X<1) и (X>2)|} означает пустое множество С, т.е. С=ø
Обращаю Ваше внимание на то, что Р(Х) представляет собой предмет, т.е. логическое выражение, которое может быть истинным или ложным в зависимости от конкретного значения элемента Х.
Элемент Х принадлежит множеству М только в том случае, если Р(Х) истинно.
2-ой способ. Универсальный способ задания множества состоит в обычном перечислении его элементов.
Пример: запись A={X1,X2,…,Xn} означает, что множество А состоит из элементов X1,X2,…,Xn.
Запись M={2,3,4,5} представляет собой множество экзаменационных оценок(в 5-ти бальной системе).
Порядок перечисления элементов множества не имеет значения, т.е. множество М можно записать и в виде M={5,4,3,2} и т.д.
Чтобы над множествами можно было бы выполнить те или иные операции, нужно предварительно определить способы их сравнения между собой:
1.Некоторые множества А и В могут совпадать(А=В) или не совпадать друг с другом(А≠В).
Множества считаются совпадающими, если любой элемент множества А принадлежит множеству В, и наоборот любой элемент множества В принадлежит множеству А.
2.Если любой элемент множества А принадлежит множеству В, то считается, что множество А является подмножеством(частью) множества В и записывают этот факт в виде А⊂В.
Примечание: Если множества А и В совпадают(А=В), то они являются подмножествами друг друга, т.е. А⊂В и В⊂А.
3.Если
хотя бы один элемент множества А не
принадлежит множеству В, то это
записывается в виде А
В; иначе говоря множество А не является
подмножеством множества В.
4. Пустое множество является подмножеством любого множества М, т.е. Ø⊂М; а также любое множество М является подмножеством самого себя, т.е. М⊂М.
В ряде случаев возникает необходимость сравнивать между собой не только сами множества, но и элементы одного и того же множества. Для этого элементам данного множества с помощью отношения « < » принимают свойство так называемой линейной упорядоченности. Благодаря этому, из двух произвольных элементов множества один всегда «меньше» другого, то есть «предшествует» ему.