Алгоритмы – это методы решения проблем. Алгоритмы применяются практически в любой области человеческой деятельности. Умение составлять правильные и эффективные алгоритмы является важным качеством любого специалиста практически из любой области.
«Я считаю, что разница между плохим и хорошим программистом в том – считает ли он свой код или структуры данных более важными. Плохой программист заботится о коде. Хороший программист – о структуре данных и их взаимосвязях».
Линус Торвальдс«Алгоритмы + структуры данных = программы».
Никлаус Вирт
Зачем изучать алгоритмы?
- Они имеют очень широкое распространение и влияние.
- Имеют глубокие корни и предоставляют широкие возможности.
- Помогают решить проблемы, которые не могут быть решены иным путем.
- Помогают стать хорошим программистом.
- Они могут раскрыть секреты жизни и вселенной.
- Для саморазвития, интеллектуальной стимуляции и хорошего заработка.
Лекция 1. Соединение-поиск.
Порядок преподнесения материала в лекциях:
- Сформулировать проблему/задачу.
- Найти алгоритм решения
- Достаточно ли он быстр? Достаточно ли памяти?
- Если нет – понять почему.
- Найти пути оптимизации.
- Повторить пока не будем удовлетворены результатом.
Так называемый Научный метод
Динамические соединения.
Допустим мы имеем массив из N объектов, а также 2 команды:
1. Процедура Объединить – создает соединение между двумя объектами.
2. Функция ОбъектыСоединены – проверяет наличие пути, который объединяет 2 объекта.
Вступайте в нашу телеграмм-группу Инфостарт