Алгоритмы и структуры данных. Подгруппа 107-1

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

Домашние задания

Задача из домашнего задания засчитывается, если выполнены 2 условия.

  1. Она была сдана в контест до дедлайна и прошла все тесты.
  2. Были исправлены все замечания по review.

Общие замечания по ДЗ 1

  1. В задача E должна быть решена через функцию Partition.
  2. QuickSort в задаче F должен работать за O(n log n) в среднем, вне зависимости от входных данных. Решения, где pivot всегда выбирается как средний элемент, и другие алгоритмы, работающие за O(n^2) в худшем случае, нужно будет исправить.

Семинары

Задачи 26.01

  1. Дан массив длинны n не содержащий повторяющихся элементов. Найти в нем любой локальный минимум(элемент меньше своих соседей).
  2. Модифицировать алгоритм сортировки подсчётом с семинара, так чтобы можно было сортировать пары (int, T).

Задачи 09.02

  1. Дана строка S и словарь D. Найти количество разбиений строки S на слова из словаря D.
  2. Дан массив положительных чисел. Робот начинает движение с нулевой ячейки. Он может прыгать в право на число ячеек не превышающее значения текущей ячейки. Найти минимальное количество прыжков, которое нужно сделать, чтобы выпрыгнуть за правую границу массива.
  3. Даны 3 строки. Является ли первая строка перемешиванием двух других.

Задачи 12.02

  1. Есть набор вещей с разными весами и рюкзак в котором можно унести R килограмм. Какой максимальный вес можно набрать?