Публикации по теме 'algorithms'
Почему вы не можете решить проблемы с Leetcode
Когда я впервые начал заниматься элитным кодированием, я изо всех сил пытался решить даже простые задачи, такие как «Сумма двух», методом грубой силы. Я неоднократно читал решения, но не мог их понять.
За полтора года изучения LeetCode и решения около 200 задач я нашел способ улучшить эту практику. Вот что вам нужно знать, чтобы расширить свои возможности решения LeetCode:
1. **Основные структуры данных и алгоритмы**: изучите следующие структуры данных и их временную сложность для..
Высота и глубина бинарного дерева
В этой статье мы рассмотрим высоту и глубину бинарных деревьев и то, как они рассчитываются.
Начнем с разницы между высотой и глубиной. Это довольно просто, так что давайте сразу углубимся в это — после некоторой терминологии:
Край — край считается линией между узлами, поэтому край является ссылкой от одного узла к другому. Ссылочный узел называется…
Математика и статистика, лежащие в основе машинного обучения - ЧАСТЬ 3
Итак, эта 3-я часть блога, а также заключительная часть, так как я буду освещать последние темы по математике и статистике, лежащие в основе машинного обучения.
Если вы не видели мой предыдущий блог, проверьте его. Вот ссылка на него.
Часть 1 -
Математика и статистика в основе машинного обучения - ЧАСТЬ 1 Линейная алгебра shubhangagrawal1999.medium.com
Часть 2 -
Математика и статистика, лежащие в..
Поиск в ширину🛒
Поиск в ширину – это алгоритм графа, используемый для
Чтобы проверить, есть ли путь между двумя вершинами/узлами Чтобы получить кратчайший путь между двумя узлами Выполнить обход всего графа, т.е. посетить каждый узел в данном графе.
Временная сложность Временная сложность алгоритма поиска в ширину составляет O(v+e) . Где v — количество вершин/узлов, а e — количество ребер.
Объяснение Давайте возьмем пример, предположим, что мы хотим увидеть, существует ли путь между двумя..
Сортировка вставками — самая быстрая
Не доверяйте нотации Big-O
если у вас есть массив между 12–15 элементами , используйте сортировку вставками.
Хорошо известно, что временная сложность при использовании обозначения Big-O для наихудшего случая сортировки вставками составляет O( n ²) .
Однако нотация Big-O касается только асимптотической эффективности алгоритма. Это означает, что мы рассматриваем производительность алгоритма только тогда, когда размер входных данных близок к пределу его эффективности ...
Алгоритмы машинного обучения — что вам нужно знать
Давайте начнем с того, что означает алгоритм и что он может сделать для кода, который мы пишем на любом из языков.
Что ж, алгоритм можно определить так: «В математике и информатике алгоритм — это недвусмысленная спецификация того, как решать класс задач. Алгоритмы могут выполнять вычисления, обработку данных и автоматические логические задачи», или, говоря простым языком, это можно интерпретировать как « алгоритм — это компьютерная процедура, которая во многом похожа на рецепт..
Алгоритм сортировки Python: быстрая сортировка
Быстрая сортировка - это еще один алгоритм «разделяй и властвуй», подобный алгоритму merge_sort . Однако уникальный метод быстрой сортировки делает его на удивление эффективным и, следовательно, популярным.
Это операция рекурсии, которая требует разбиения массива на несколько подсписок. В последнем подсписке останется только один элемент, прежде чем он выйдет из своей рекурсии с помощью сортированного списка.
Идея состоит в том, чтобы на каждом уровне подсписка захватить случайный..