Публикации по теме 'algorithms'
10 лучших алгоритмов, которые нужно знать
Алгоритмы являются основой информатики и играют решающую роль в эффективном решении сложных задач. Это пошаговые процедуры или формулы, предназначенные для выполнения конкретных задач. В этой статье мы рассмотрим 10 лучших алгоритмов, которые должен знать каждый энтузиаст информатики. Эти алгоритмы оказали значительное влияние на различные области, включая анализ данных, машинное обучение, криптографию и оптимизацию сети.
Бинарный поиск:
Двоичный поиск — это фундаментальный алгоритм..
Сортировка слиянием
Сортировка слиянием — это алгоритм «Разделяй и властвуй»; это время эффективно и мой любимый.
Он работает, разбивая массив на две части , рекурсивно вызывает сам себя и затем объединяет две отсортированные части. Это эффективный алгоритм сортировки.
Здесь для этого алгоритма сортировки нам нужны две функции: одна для разделения и одна для воссоединения разделенных частей; давайте углубимся в это.
Первая функция получает несортированный массив, разбивает его на две..
LeetCode #173 Итератор двоичного дерева поиска
Середина
Проблема
Реализуйте итератор для двоичного дерева поиска (BST). Ваш итератор будет инициализирован корневым узлом BST.
Вызов next() вернет следующее наименьшее число в BST.
Примечание. next() и hasNext() должны выполняться в среднем за время O(1) и использовать память O( h ), где h — высота дерево.
Кредиты: Особая благодарность @ts за добавление этой задачи и создание всех тестовых случаев.
Решение
Из-за того, что элементы дампа расположены в порядке..
Проект по обогащению портфолио: решение проблемы с рюкзаком 0–1 в Javascript
В своем проекте по обогащению у старших я решил ответить на распространенный, но сложный вопрос собеседования: как решить задачу о рюкзаке 0–1:
Предположим, у нас есть набор из n элементов, каждый с заданным неотрицательным значением wi и неотрицательным значением vi , где i = 1,…, n. Нам дается рюкзак грузоподъемностью Вт . Найдите максимальное значение для подмножества элементов, общий вес которых не превышает W .
Решение грубой силы
Чтобы найти метод грубой силы для..
Освоение Algo ++ с помощью блоков кодирования
Знаете ли вы, что алгоритм - это набор шагов, используемых для выполнения задачи, в то время как структура данных - это то, что используется для хранения данных, манипулирование указанными данными выполняется с помощью алгоритмов. Проще говоря, структуры данных - это структуры, запрограммированные для хранения упорядоченных данных, чтобы с ними можно было легко выполнять различные операции. Он представляет собой знание данных, которые необходимо организовать в памяти. Он должен быть..
LeetCode: окончательное значение переменной после выполнения операций
Окончательное значение переменной после выполнения операций — LeetCode Можете ли вы решить этот реальный вопрос на собеседовании? Окончательное значение переменной после выполнения операций — существует… leetcode.com
Существует язык программирования только с четырьмя операциями и одной переменной X :
++X и X++ увеличивает значение переменной X на 1 . --X и X-- уменьшает значение переменной X на 1 ...
Серия Swift Leetcode: максимальная площадь куска пирога после горизонтального и вертикального разрезов
Быстрое решение для Leetcode 1465
Максимальная площадь торта после горизонтального и вертикального разрезов (Leetcode 1465) — дан прямоугольный торт высотой h и шириной w и два массива целых чисел horizontalCuts и вертикальные разрезы, где… theswiftnerd.com
Вы можете прочитать полную историю в блоге The Swift Nerd по ссылке выше.
Постановка задачи
Дан прямоугольный торт высотой h и шириной w , а также два массива целых чисел..