Автор работы: Пользователь скрыл имя, 06 Апреля 2011 в 20:45, реферат
Система счисления — символический метод записи чисел, представление чисел с помощью письменных знаков.
§1. Системы счисления……………………………….………………..……3
§2. Счетность и несчетность множеств………………………………6
§3. Трансфинитные числа и множества……………………………….10
§4. Теория нечетких множеств………………………………………….12
§5. Алгоритмы сортировки и поиска……………………………….......14
§6. Теория графов…………………………………………………………...16
§7. Комбинаторика…………………………………………………….......18
§8. Дискретизация…………………………………………………………..21
§9.Теория сложности алгоритмов………………………………………25
§10. Теория конечных автоматов………………………………….……26
Список литературы…………………………………………..…….…….…..29
.
для каждого.
§5 Алгоритмы сортировки и поиска
Задачей сортировки является преобразование исходной последовательности в последовательность, содержащую те же записи, но в порядке возрастания (или убывания) значений ключа.
Ключ сортировки – поле, выбранное в качестве ключевого в последовательности однотипных записей.
Сортировка включением
Одним из наиболее простых и естественных методов сортировки является сортировка с простыми включениями. Пусть имеется массив ключей a1, a2, ..., an. Для каждого элемента массива, начиная со второго, производится сравнение с элементами с меньшим индексом (элемент ai последовательно сравнивается с элементами ai-1, ai-2 ...) и до тех пор, пока для очередного элемента aj выполняется соотношение aj > ai, ai и aj меняются местами. Если удается встретить такой элемент aj, что aj <= ai, или если достигнута нижняя граница массива, производится переход к обработке элемента a[i+1] (пока не будет достигнута верхняя граница массива).
Можно сократить число сравнений, применяемых в методе простых включений, если воспользоваться тем фактом, что при обработке элемента ai массива элементы
a1, a2, ..., ai-1 уже упорядочены, и воспользоваться для поиска элемента, с которым должна быть произведена перестановка, методом двоичного деления.
Сортировка «методом пузырька»
Простая обменная сортировка (в просторечии называемая "методом пузырька") для массива a1, a2, ..., an работает следующим образом. Начиная с конца массива сравниваются два соседних элемента (an и an-1). Если выполняется условие an-1 > an, то значения элементов меняются местами. Процесс продолжается для an-1 и an-2 и т.д., пока не будет произведено сравнение a2 и a1. Понятно, что после этого на месте a1 окажется элемент массива с наименьшим значением.
На последних шагах расположение значений элементов не меняется(массив уже упорядочен). Поэтому, если на некотором шаге не было произведено ни одного обмена, то выполнение алгоритма можно прекращать.
Так же можно запоминать наименьшее значение индекса массива, для которого на текущем шаге выполнялись перестановки. Очевидно, что верхняя часть массива до элемента с этим индексом уже отсортирована, и на следующем шаге можно прекращать сравнения значений соседних элементов при достижении такого значения индекса.
Сортировка выбором
При сортировке массива a1, a2, ..., an методом простого выбора среди всех элементов находится элемент с наименьшим значением ai, и a1 и ai обмениваются значениями. Затем этот процесс повторяется для получаемых подмассивов a2, a3, ..., an, ... aj, aj+1, ..., an до тех пор, пока мы не дойдем до подмассива an, содержащего к этому моменту наибольшее значение.
Сортировка разделением (Quicksort)
Метод сортировки разделением был предложен Чарльзом Хоаром в 1962 г. Этот метод является развитием метода простого обмена и настолько эффективен, что его стали называть "методом быстрой сортировки - Quicksort".
Основная идея алгоритма состоит в том, что случайным образом выбирается некоторый элемент массива x, после чего массив просматривается слева, пока не встретится элемент ai такой, что ai > x, а затем массив просматривается справа, пока не встретится элемент aj такой, что aj < x. Эти два элемента меняются местами, и процесс просмотра, сравнения и обмена продолжается, пока мы не дойдем до элемента x. В результате массив окажется разбитым на две части - левую, в которой значения ключей будут меньше x, и правую со значениями ключей, большими x. Далее процесс рекурсивно продолжается для левой и правой частей массива до тех пор, пока каждая часть не будет содержать в точности один элемент.
Алгоритм поиска по бинарному дереву
Суть
этого алгоритма достаточно проста.
Представим себе, что у нас есть
набор карточек с телефонными
номерами и адресами людей. Карточки
отсортированы в порядке
Скорость сходимости этого алгоритма пропорциональна . Это означает буквально то, что не более, чем через сравнений, мы либо найдем нужное значение, либо убедимся в его отсутствии.
§6 Теория графов
Теория графов — раздел дискретной математики, изучающий свойства графов. Первая работа по теории графов принадлежит Леонарду Эйлеру. В 1736 году в одном из своих писем он формулирует и предлагает решение задачи о семи кёнигсбергских мостах, ставшей впоследствии одной из классических задач теории графов. Но термин «граф» впервые ввел в 1936 году венгерский математик Денеш Кениг.
Графами называются схемы, состоящие из точек и соединяющих эти точки отрезков прямых или кривых.
Таким образом, ребро определяется парой вершин. Два ребра, у которых есть общая вершина, называются смежными (или соседними).
Графы, в которых не построены все возможные ребра , называются неполными графами. В противном случае граф называется полным.
Если полный граф имеет n вершин, то количество ребер будет равно .
Граф называется ориентированным (или орграфом), если некоторые ребра имеют направление. Это означает, что в орграфе некоторая вершина может быть соединена с другой вершиной, а обратного соединения нет. Геометрически граф часто изображают точками плоскости, причем соседние вершины соединены дугами (для орграфа некоторые дуги имеют направление, что обычно отмечают стрелкой).
Помимо этого, в теории графов рассматриваются также мультиграфы – это такие графы, в которых могут быть петли (т. е. некоторая вершина соединена сама с собой ребром) или некоторые пары вершины могут быть соединены между собой несколькими ребрами.
Маршрут в графе – это последовательность соседних (смежных) вершин. Ясно, что можно определить маршрут и как последовательность смежных ребер (в этом случае ребра приобретают направление). Заметим, что в маршруте могут повторяться вершины, но не ребра. Маршрут называется циклом, если в нем первая вершина совпадает с последней.
Путь в графе (иногда говорят простой путь) – это маршрут без повторения вершин (а значит, и ребер).
Контур – это цикл без повторения вершин, за исключением первой вершины, совпадающей с последней.
Рис.2
Граф называется связным, если любые две его вершины можно соединить маршрутом (или путем). На рис.2 изображен связный граф.
Ребро, при удалении которого граф перестает быть связным, иногда называют мостом или перешейком.
Следующее определение имеет смысл только для графов или мультиграфов без петель (но не для орграфов).
Степень вершины – это число ребер, входящих в эту вершину. Вершина называется висячей, если ее степень равна единице.
Кликой в неориентированном графе называется подмножество вершин, каждые две из которых соединены ребром графа. Иными словами, это полный подграф первоначального графа. Размер клики определяется как число вершин в ней.
Двудольный граф или биграф — это математический термин теории графов, обозначающий граф, множество вершин которого можно разбить на две части таким образом, что каждое ребро графа соединяет какую-то вершину из одной части с какой-то вершиной другой части, то есть не существует ребра, соединяющего две вершины из одной и той же части.
Применение теории графов
§7 Комбинаторика
Термин "комбинаторика" был введён в математический обиход Лейбницем.
В 1666 году Лейбниц опубликовал "Рассуждения о комбинаторном искусстве". В своём сочинении Лейбниц, вводя специальные символы, термины для подмножеств и операций над ними находит все k -сочетания из n элементов выводит свойства сочетаний.