- •1.1. Внутренняя сортировка (сортировка массивов).
- •Число степеней свободы материальной системы. Обобщенные координаты.
- •1.4 Розробити консольну програму, яка відкриває файл порціями по 4Кб та відображае його зміст в вікні. Для роботи з файлами викорастати Win32 Api
- •Определить маску подсети, которая соответствует диапазону ip-адресов.
- •1 Способ
- •2 Способ
- •2.2 Проектирование концептуальной модели предметной области с использованием er – диаграммы
- •2.3 . Принцип возможных перемещений. Обобщенные силы.
- •2.4 Написать 2 варианта запуска Notepad.Exe для обработки файла
- •1 Способ
- •2 Способ
- •3.2 Структура данных и ограничения реляционной модели. Реляционная модель.
- •Внешние ключи.
- •Основные стратегии поддержки ссылочной целостности.
- •Языки манипулирования данными в реляционной модели.
- •3.3 Вариационный принцип Гамильтона
- •3.4 Написать 2 конс. Программы Master и Slave. Master запускает Slave и передает ей через ком. Строку дескриптор своего процесса. Slave ожидает окончания работы Master и выдает сообщение.
- •4.2 Нормализация отношений и теория нормальных форм
- •Теория нормальных форм.
- •4.3 Дифференциальные уравнения Лагранжа II рода
- •4.4 Написать 2 программы, демонстрир. Синхрониз. Процессов с пом. Событий.
- •5.2 Алгоритм приведения отношений к третьей нормальной форме.
- •5.3 Фазовая плоскость. Фазовые кривые. Особые точки на фазовой плоскости, их классификация.
- •Классификация особых точек
- •5.4 Программа, демонстрирующая синхронизацию доступа к глобальному массиву с пом. Мютексов
- •6.2 Использование операций реляционной алгебры для создания языка запросов Основные операции:
- •1. Унарные(с одним отношением). 2. Бинарные.
- •Производные операзии
- •6.3 Численное интегрирование уравнений Лагранжа
- •6.4 Программа, выводящая информ . О загрузке операт . Памяти компьютера
- •7.2 Назначение языка sql.
- •Типы данных
- •7.3 Дифференциальные уравнения Гамильтона
- •7.4 Параметризированный класс очередь
- •8.1 Понятие дерева. Классификация деревьев. Способы представления дерева.
- •8.2 Структура запросов sql. Запросы с условием.
- •Запросы с группировкой.
- •Сортировка (упорядочивание) выходных полей.
- •Объединение таблиц (команда union).
- •Использование кванторов в подзапросах.
- •8.3 Динамика популяции при отсутствии и наличии смертности
- •8.4 Составить программу на Asm для очистки экрана
- •9.1 Общие операции над деревьями. Процедуры добавления и удаления элемента. Количество листьев и узлов в дереве.
- •9.2 Язык манипулирования данными sql. Добавление строк.
- •Удаление строк.
- •Изменение данных.
- •9.3 Система «хищник-жертва»
- •9.4 Cоставить прграмму на Asm для преобразования строчных букв в прописные
- •10.1 Общие операции над деревьями. Процедуры добавления и удаления элемента. Количество листьев и узлов в дереве.
- •10.2 Язык определения данных sql. Создание бд.
- •Создание таблиц.
- •Модификация таблиц.
- •10.3 Автоколебания. Предельный цикл. Асимптотический метод исследования автоколебаний.
- •10.4 Сост . Прогр . На Asm для нахождения в заданном массиве номера первого числа, равного нулю
- •11.1 Формат команд процессора 80386. Способы адресации, которые применяются в командах процессора 80386.
- •11.2 Предоставления прав доступа sql.
- •11.3 Виды топологических структур и их характеристики.
- •Класс широковещательные сети
- •2. Древовидная топология.
- •3. Звездообразная топология.
- •Класс последовательные сети
- •1. Звездообразная топология с активным центром.
- •2. Кольцевая топология.
- •11.4 Написать на Asm программу для сохранения текстового экрана в буфере и последующей записи буфера в файл
- •12.1 Методы передачи данных в сетях эвм.
- •1 Коммутация каналов
- •Коммутация сообщений
- •Коммутация пакетов
- •12.2 Защищенный режим работы микропроцессора. Адресация в защищенном режиме. Дескрипторные таблицы. Формат дескриптора сегмента. Модель памяти flat.
- •Проектирование приложений в системе клиент - сервер.
- •Проектирование форм. Формы для просмотра.
- •Формы для ввода данных.
- •Проектирование отчетов.
- •Тестирование приложения.
- •Распределенные базы данных.
- •12.4 Дан файл символов построить частотный словарь, представив его виде бинарного дерева поиска и составить линейно скобочную запись.
- •13.1 Win32 api и поддерживающие его платформы. Объекты ядра. Защита. Совместное использование объектов ядра несколькими процессами. Процессы. Описатель экземпляра процесса.
- •13.2 Системы искусственного интеллекта на основе решателей задач
- •13.3 Архитектура сетей эвм. Иерархия протоколов.
- •13.4 Дан файл, компоненты которого являются действительными числами. Сформировать линейный список и
- •14.1 Потоки. Функция CreateThread. Завершение потока. Распределение процессорного времени между потоками. Изменение класса приоритета процесса. Установка относительного приоритета потока.
- •14.2 "" Процедура в игровых задачах
- •14.3 Методы повторной передачи arq.
- •1. Arq с остановкой и ожиданием Send and Wait
- •2. Arpanet arq (с временными подканалами)
- •3. Arq на n шагов назад (Go Back n)
- •4. Arq с выборочным повтором (с адресным переспросом)
- •14.4 // Дан файл символов. Сформировать линейный список. Просмотреть линейный список из головы и составить из символов строку.
- •Раздел varchar(50),
- •15.1 Архитектура памяти в Win32. Виртуальное адресное пространство. Регионы в адресном пространстве. Передача региону физической памяти.
- •15.2 Особенности поиска решений в игровых задачах
- •16.1 Работа с файлами в Win32.
- •4) GetVolumeInformation возвращает информацию о файловой системе и дисках (директориях ).
- •7) GetComputerName, GetUserNameA
- •8) GetSystemDirectory, GetTempPath, GetWindowsDirectory, GetCurrentDirectory
- •16.2 Представление задач в пространстве состояний
- •16.3 Лвс Ethernet. Общая шина: Метод доступа.
- •16.4 Представить многочлен в виде линейного списка. Написать прогу кот выполняет сложение многочленов
- •17.1 Файлы, проецируемые в память.
- •17.2 Алгоритмы перебора в ширину и глубину в пространстве состояний
- •Алгоритм равных цен
- •Изменения при переборе в произвольных графах.
- •17.3 Повторители Ethernet. Разрешение коллизий.
- •17.4 Написать процедуру, которая осуществляет сложение целых чисел произвольной длины(двухсвязный список)
- •17.5Выдает список работников работают над проектом
- •18.1 Многозадачность. Распределение времени с вытеснением. Очереди потока и обработка сообщений. Архитектура очередей сообщений в Win32.
- •18.2 Алгоритм упорядочения поиска в пространстве состояний.
- •18.3 Лвс Token Ring. Функциональные процессы.Процесс инициализации станции
- •18.5 Выдает список поставщиков
- •19.1 Многозадачность. Распределение времени с вытеснением. Очереди потока и обработка сообщений. Архитектура очередей сообщений в Win32.
- •19.2 Метод сведения задач к подзадачам
- •19.3 Принципы межсетевого взаимодействия. Протокол ip.
- •19.4 Параметризированный ограниченный массив
- •20.1 Конструктивная модель стоимости сосомо.
- •20.2 Основные методы поиска в "и–или" деревьях Перебор в ширину в деревьях и – или.
- •Построение потенциального дерева решений t0. Эвристический поиск в деревьях и-или Стоимость деревьев типа и-или.
- •20.3 Протокол dhcp.
- •20.4 Параметризованная функция бинарного поиска в массиве
- •21.1 Основы com. Объект com. Серверы com. Фабрика класса. Интерфейс iUnknown.
- •2 Вариант ответа
- •21.2 Алгоритм упорядочения перебора при сведении задач к подзадачам
- •21.3 Разрешение имен узлов при помощи dns.
- •21.4 В области памяти, адресуемой регистром si нах-ся цепочка семибитных кодов символов….
- •22.1 Архитектура unix. Ядро системы. Файловая система. Типы файлов.
- •22.2 Проектирование приложений в системе клиент - сервер.
- •22.3 Протокол arp
- •22.4 Дан файл целых чисел компоненты которого различны, сформировать циклический линейный список, задать число n и удалять n-ый элемент в списке пока не останется 1
- •1 Вариант
- •2 Вариант
- •23.1 Командный интерпретатор shell. Общий синтаксис скрипта. Переменные. Команды, функции и программы. Условные выражения. Интерпретатор shell
- •23.2 Способы доступа к бд из приложений. Формы для просмотра.
- •Формы для ввода данных.
- •Проектирование отчетов.
- •Тестирование приложения.
- •23.3 Лвс Token Ring. Функциональные станции.
- •23.4 Вычислить значение арифметического выражения, преобразовав его в постфиксную форму. Предусмотреть со скобками и без скобок.(со стеком)
- •24.1 Файловая система ntfs.
- •24.2 Полнота реляционной субд (12 правил Кодда)
- •24.3 Модель взаимного соединения открытых систем.
- •24.4 // Сформировать числовой файл и отсортировать его компоненты с помощью двух стеков.
- •25.1 Функции dos , используемые при создании пользовательского вектора прерывания (Проиллюстрировать программой)
- •25.2 Распределенные базы данных.
- •25.3 Коммутаторы Ethernet
- •25.4 Дан файл символов сформировать дерево поиска описав процедуру удаления элнмента из дерева и функцию подсчета листьев в дереве.
8.4 Составить программу на Asm для очистки экрана
.model small
.stack 100h
.code
mov ax,0600h ; 6-я ф-ция
mov bh,07 ; атрибуты символов
mov cx,0000h ; 0x0 - верхний левый угол
mov dx,184fh ; 24x79 - нижний правый угол
int 10h
mov ah, 4ch
int 21h
end
8.5
Класс В 145.70.0.0
Расчет ведется на 20 подсетей по 1100 узлов каждый
20п/с10=101002 - 5 бит
25-2=30, 30-20=10-запас дополнительных сетей
111110002=24810
Маска подсети 255.255.248.0
3+8=11 ”0”
211-2=2046 узла
2046-1100=946-запас узлов
9.1 Общие операции над деревьями. Процедуры добавления и удаления элемента. Количество листьев и узлов в дереве.
Существует 3 способа обхода бинарного дерева: в прямом порядке, в симметричном порядке, в обратном порядке.
В прямом порядке:
-
Попасть в корень 2 Пройти в прямом порядке левое поддерево 3 Пройти в прямом порядке правое поддерево
В симметричном порядке:
-
Пройти в симметричном порядке левое поддерево 2 Попасть в корень 3 Пройти в симметричном порядке правое поддерево
В обратном порядке:
-
Пройти в обратном порядке левое поддерево 2 Пройти в обратном порядке правое поддерево 3 Попасть в корень
Алгоритм поиска можно записать, пользуясь рекурсивным определением двоичного дерева в рекурсивном виде. Если искомый элемент Item меньше Tree^.Item, то поиск продолжается в левом поддереве, если равен – то поиск считается успешным, если больше – поиск продолжается в правом поддереве; поиск считается неудачным, если мы дошли до пустого поддерева, а элемент найден не был. Программу лучше писать рекурсивную для избежания избыточности. Каждый рекурсивный вызов размещает в стеке локальные переменные Item и Tree, а также адрес точки возврата из подпрограммы. В нерекурсивном варианте можно обойтись одной переменной Item и одной переменной Tree.
Восстановление сбалансированности.
Пусть имеется дерево, сбалансированное всюду, кроме корня, а в корне показатель сбалансированности по модулю равен 2-м. Такое дерево можно сбалансировать с помощью одного из четырех вращений. При этом высота дерева может уменьшиться на 1. Для восстановления баланса после удаления/добавления вершины надо пройти путь от места удаления/добавления до корня дерева, проводя при необходимости перебалансировку и изменение показателя сбалансированности вершин вдоль пути к корню. Можно доказать, что в других вершинах перебалансировка и изменение показателя сбалансированности не понадобятся.
Добавление элемента в сбалансированное дерево.
Схематично алгоритм вставки нового элемента в сбалансированное дерево будет состоять из следующих трех основных шагов:
-
Поиск по дереву. 2 Вставка элемента в место, где закончился поиск, если элемент отсутствует. 3 Восстановление сбалансированности.
1-ый шаг необходим для того, чтобы убедиться в отсутствии элемента в дереве, а также найти такое место вставки, чтобы после вставки дерево осталось упорядоченным. Первые два шага ничем не отличаются от алгоритма, приведенного в начале разделе.
3-ий шаг представляет собой обратный проход по пути поиска: от места добавления к корню дерева. По мере продвижения по этому пути корректируются показатели сбалансированности проходимых вершин и производится балансировка там, где это необходимо. Добавление элемента в дерево никогда не требует более одного поворота.
Удаление элемента из сбалансированного дерева.
Алгоритм удаления элемента из сбалансированного дерева будет выглядеть так:
1Поиск по дереву. 2 Удаление элемента из дерева. 3 Восстановление сбалансированности дерева (обратный проход).
1-ый шаг необходим, чтобы найти в дереве вершину, которая должна быть удалена. Первых два шага аналогичны удалению элемента, приведенному в начале раздела.
3-ий шаг представляет собой обратный проход от места, из которого взят элемент для замены удаляемого, или от места, из которого удален элемент, если в замене не было необходимости.
Операция удаления может потребовать перебалансировки всех вершин вдоль обратного пути к корню дерева, то есть порядка log(N) вершин. Доказательство того, что порядок числа вершин имеет такой аналитический вид, смотрите в следующем разделе.
Анализ операций над сбалансированным деревом.
Понятно, что в случае полного двоичного дерева (наилучший случай) мы получим сложность T(log(n)) (на каждом шаге размер дерева поиска будет сокращаться вдвое). Рассмотрим минимальное сбалансированное дерево (худший случай). Таким будет дерево, у которого для каждой вершины высота левого и правого поддеревьев различаются на 1. Для такого дерева можно записать следующую рекуррентную формулу для числа вершин (h – высота дерева):
Покажем, что h<log2(Nh). Для этого необходимо и достаточно показать, что 2h>Nh. Докажем последнее методом математической индукции.а) h=0: 20>N0=0; б) h=1: 21>N1=1; в) h>1: Пусть 2h-2>Nh-2 и 2h-1>Nh-1. Тогда 2h-2+2h-1>Nh-2+ Nh-1.
И далее получаем 2h>1+2h-2+2h-1>1+Nh-2+ Nh-1=Nh, что и требовалось доказать.
Таким образом, мы доказали, что алгоритмы поиска/добавления/удаления элементов в сбалансированном дереве имеют сложность T(log(n)).
Г.М.Адельсон-Вельский и Е.М.Ландис доказали теорему, согласно которой высота сбалансированного дерева никогда не превысит высоту идеально сбалансированного дерева более, чем на 45%.
// симметричное рекурсивное прохождение узлов дерева
template <class T>
void Inorder (TreeNode<T> *t, void visit(T& item))
{
// рекурсивное прохождение завершает-ся на пустом поддереве
if (t != NULL)
{ Inorder(t->Left(), visit); // спуститься по левому поддереву
visit(t->data); // посетить узел
Inorder(t->Right(), visit); // спуститься по правому поддереву
}
}