Применение деревьев для представления строковой информации Абдрашитов Д. С. (гр. 6538) Руководитель Корнеев Г. А., к.т.н., доцент кафедры КТ.

Презентация:



Advertisements
Похожие презентации
В Паскале имеется набор стандартных процедур и функций для работы со строками. Рассмотрим некоторые из этих процедур и функций на примере следующих строковых.
Advertisements

Строки Лекция 10. План Стандартные предикаты по работе со строками Преобразование строки в список символов Преобразование списка символов в строку Количество.
Операторы языка Pascal для работы со строковыми величинами справочная презентация Халды 2008 Автор: Эсенбаев Д. В.
Строковые функции в Visual Basic ГБОУ СОШ 143 Санкт-Петербург Предмет: Информатика и ИКТ Электронные ресурсы Программа: 10 класс Разработка: Ерохов А.Е.,
Символьный тип (Сhar) простой тип данных, предназначенный для хранения одного символа в определённой кодировке. Может являться как однобайтовым (для стандартной.
Поиск папок и файлов 8 класс. Пуск - Поиск Форматы ввода поисковой строки * 1.Знак * означает замену произвольного количества символов. ? 2.Знак ? означает.
Строковой тип – это набор символов. Формат описания строкового типа string [n], где n количество возможных символов в описываемой величине. Максимальная.
Основы алгоритмизации и программирования ABC PASCAL CHAR LENGTH COPY DELETE INSERT Сикор Ольга, 10 класс, гимназия 1.
Декомпозиция сложных дискретных систем, формализованных в виде вероятностных МП-автоматов. квалификационная работа Выполнил: Шляпенко Д.А., гр. ИУ7-83.
Строковые функции. Все стандартные строковые функции в Visual Studio содержатся в классе Microsoft.VisualBasic.
Работа со строковыми типами данных. Строка – упорядоченная последовательность символов. Строковая константа – последовательность символов, заключенных.
Практическая работа 2. Пробел Переход на новую строку Смена языка Удаление влево.
2. Алгоритм Рабина – Карпа Функция:= 11 Число сравнений символов: = 9 Значения функции на подстроках:
Операции над строками. Тип данных (string) определяет строки с максимальной длиной 255 символов. Переменная этого типа может принимать значения переменной.
Обработка строк Строка- упорядоченная последовательность символов. Строковый тип данных- структурированный тип в Турбо-Паскале. Каждый символ.
ПРИМЕНЕНИЕ СВОЙСТВ ЛОГАРИФМИЧЕСКОЙ ФУНКЦИИ 10 класс Учитель Удалова Е.М. 579 школа Санкт-Петербург.
Тест по информатике и икт (5 класс) на тему: Итоговый тест. 5 класс
Часть 2: «Методы программирования». Содержание Данные и алгоритмы. Абстрактные структуры данных и структуры хранения. Создание и обработка списков Таблицы.
В. М. Гуровиц, Список (list) Строка (string) Явное задание [1, 2, 5, 27, -3]"My string" Присваивание s = [1, 2, 5, 27, -3]s = "My string"
Необхідність структурування даних. Послідовне і зв ' язне розподілення даних в пам ' яті ЕОМ. Статичні і динамічні структури даних.
Транксрипт:

Применение деревьев для представления строковой информации Абдрашитов Д. С. (гр. 6538) Руководитель Корнеев Г. А., к.т.н., доцент кафедры КТ

2 Применение деревьев для представления строковой информации Операции со строками Получение длины Получение подстроки Получение символа Конкатенация Вставка Удаление Замена

3 Применение деревьев для представления строковой информации Существующие методы ОперацияЧасть строки Изменяемые строки Неизменяемые строки Циклические очереди Двусвязные списки Функциональные строки Получение подстроки O(m)O(1)O(m)O(n + m) Конкатенация O(n + m) O(m)O(1)O(n) ИндексацияконцыO(1) серединаO(1) O(n) Вставка символа началоO(n) O(1) серединаO(n) конецO(1)O(n)O(1) O(n) Удаление символа началоO(n)O(1) серединаO(n) конецO(1) O(n) Замена символаO(1)O(n)O(1)O(n)

4 Применение деревьев для представления строковой информации Конкатенация строк Текст1Текст2Текст1Текст2 +=

5 Применение деревьев для представления строковой информации Конкатенация связок Текст1Текст2 Текст1Текст2 += +

6 Применение деревьев для представления строковой информации Пример связки СПбГУ + ИТМО +

7 Применение деревьев для представления строковой информации Связки с буферами префикссуффикс середина Связка Стек 0 … log n ~n

8 Применение деревьев для представления строковой информации Связки реального времени Связки Стек log n … 2 log n~nlog n … 2 log nlog n

9 Применение деревьев для представления строковой информации Сравнение оценок времени ОперацияЧасть строкиНеизменяемые строкиСвязки с буферамиФункциональные деки реального времени с конкатенацией Получение подстрокиконцыO(1)O(min(m, log n))O(m) серединаO(1)O(log n)н/дн/д КонкатенацияO(n + m)O(min(m, log n))O(1) ИтерированиеO(1) ИндексацияконцыO(1) серединаO(1)O(log n)н/д Вставка символаконцыO(n)O(1) серединаO(n)O(log n)н/д Удаление символаконцыO(1) серединаO(n)O(log n)н/д Замена символа на символконцыO(n)O(1) серединаO(n)O(log n)н/д Вставка строкиконцыO(n + m)O(min(m, log n))O(1) серединаO(n + m)O(log n)н/д

10 Применение деревьев для представления строковой информации Практическая реализация Замена класса String сбалансированными связками с использованием декартовых деревьев Замена класса StringBuilder с использованием идеи буферов логарифмического размера

11 Применение деревьев для представления строковой информации Результаты эксперимента Суммарное время Стандартные строки: 405 сек Сбалансированные связки: 647 сек Время без индексации Стандартные строки: 301 сек Сбалансированные связки: 286 сек

12 Применение деревьев для представления строковой информации Полученные результаты Метод представления строк с амортизированными оценками Метод представления строк с гарантированными оценками Хронологическая структура данных для деков с операцией конкатенации

13 Применение деревьев для представления строковой информации Благодарю за внимание