Мы берем первый элемент массива, и бегаем по всему оставшемуся массиву в поисках числа меньше нашего первого элемента. Когда мы пробегаем весь массив, если меньшее число найдено — меняем его местами с первым элементом.
Cуть алгоритма заключается в разделении массива на два под-массива, средней линией считается элемент, который находится в самом центре массива. В ходе работы алгоритма элементы, меньшие чем средний будут перемещены в лево, а большие в право.
Сначала делим список на кусочки (по 1 элементу), затем сравниваем каждый элемент с соседним, сортируем и объединяем. В итоге, все элементы отсортированы и объединены вместе.
Сначала меняем искомый элемент на последний в массиве и идем по массиву пока не встретим этот самый элемент(баррьер). Так можно избавиться от условия сравнения выхода за пределами массива
Выбираем опорный элемент. Если искомый элемент больше, чем опорный, то элемент находится с право и левую часть можно отбрасывать, или наоборот. Повторяем пока не найдем искомый. (только с отсортированными массивами)
Смысл задачи в том, чтобы найти подстроку по шаблону в строке. Мы пробегается по словам и ишем, чтобы первый символ шаблона совпадал с символом строки и только за тем идет проверка остальных символов.
Реализовать однонаправленный список со след функциями:
- Узел списка с информационной частью
int - Добавление узла(Push)
- Вывод списка(PrintSequence) Реализация варианта 1:
- Создать на основе алгоритма два списка
L1иL2(наполняем содержимым, я наполнил рандомным) - Создать на основе алгоритма список
L, включим в него по одному разу элементы двух предыдущих списков.
Реализовать двунаправленный список со след функциями:
- Узел списка с динамачиеской информационной частью(Для узла списка надо использовать struct)
- Вывод списка в двух направлениях
- Поиск вхождений в списке(возвращает указатель)
- Добавление элемента в список
- Удаление элемента из списка
- Программа должна отдельно выводить выполнения всех требуемых операций(Вывод, Поиск) и выполнять вариант задания Реализация варианта 1:
- Добавление элемента по номеру зачетной книжки(id)
- Если такой id имеется, то вставить перед первый элементов с таким же id
- Если такого id нет, то вставить перед элементом с большим id
- Если такого id нет и id всех элементов меньше, то ничего не делать
- Удаление элемента по группе(или по оценке)
- Сформировать новый список из оценок 'неуд'
Реализовать стек со следующими функциями:
- Узел стека с динамачиеской информационной частью
- Добавить элемент в стек
- Убрать элемент из стека
- Получить значение узла стека
- Проверить пуст ли стек Реализация варианта 2:
- Реализовать решение задачи со стеком
- Реализовать решение задачи без стека