295. Find Median from Data Stream
Company:
Медиана — это среднее значение в упорядоченном целочисленном списке. Если размер списка четный, медиана — это среднее значение двух средних значений
#leetcode295 | #hard #priorityqueue
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(log(n))
Space: O(n)
Please open Telegram to view this post
VIEW IN TELEGRAM
Представь, что ты оказался в огромном замке, полном дверей, коридоров и развилок. Твоя цель — найти комнату с сокровищем. У тебя с собой блокнот и карандаш, но нет карты.
Каждый раз, когда ты доходишь до развилки, ты записываешь в блокнот:
"Я сейчас в коридоре A, и уже пошёл в дверь 1 из 3 возможных."
Если за этой дверью тупик — ты возвращаешься назад, смотришь в блокнот и говоришь:
"Хм, я был в коридоре A и пробовал дверь 1. Попробую теперь дверь 2."
Идёшь туда, снова записываешь шаг, и так далее.
Так и работает Backtracking в программировании:
#backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Стартуем сразу с
Please open Telegram to view this post
VIEW IN TELEGRAM
2698. Find the Punishment Number of an Integer
Company:
Номер наказания для n определяется, как сумма квадратов всех целых чисел i, таких, что:
#leetcode2698 | #medium #backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n * 2^k)
Space: O(k), [k = O(log^2 n)]
Please open Telegram to view this post
VIEW IN TELEGRAM
1079. Letter Tile Possibilities
Company:
Верните количество возможных непустых последовательностей, которые вы можете составить, используя буквы tiles
#leetcode1079 | #medium #backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n!)
Space: O(n)
Представьте, что мы играем с фишками «Скрабла» и у нас есть строка «AAABBC».
Здесь можно сделать важное замечание: на самом деле важно не расположение каждой буквы, а количество имеющихся в наличии фишек каждой буквы. Независимо от того, используем ли мы первую «А» или вторую «А», последовательности, которые мы можем создать, не меняются — нам просто нужно знать, что у нас есть три «А».
Это понимание подводит нас к ключевому решению: вместо отслеживания отдельных букв мы можем отслеживать частоту каждой из них
Please open Telegram to view this post
VIEW IN TELEGRAM
47. Permutations II
Company:
#leetcode47 | #medium #backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n*n!)
Space: O(n!)
Please open Telegram to view this post
VIEW IN TELEGRAM
306. Additive Number
Company:
Аддитивное число — это строка, цифры которой могут образовывать допустимую аддитивную последовательность:
#leetcode306 | #medium #backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(2^n)
Space: O(n)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
1415. The k-th Lexicographical String of All Happy Strings of Length n
Company:
Верните k-ю строку этого списка или пустую строку, если количество счастливых строк меньше.
Счастливая строка — это строка, которая:
Список счастливых строк для примера 3:
["aba", "abc", "aca", "acb", "bab", "bac", "bca", "bcb", "cab", "cac", "cba", "cbc"]
#leetcode1415 | #medium #backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(2^n)
Space: O(n*2^n)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
51. N-Queens
Company:
Задача об n ферзях — это расстановка n ферзей на n x n шахматной доске таким образом, чтобы никакие два ферзя не атаковали друг друга.
Каждое решение должно содержать отдельную конфигурацию доски с размещением n ферзей, где 'Q' и '.' обозначают ферзя и пустое место соответственно
#leetcode51 | #hard #backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n!)
Space: O(n)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
679. 24 Game
Company:
Вам нужно составить из чисел на этих карточках математическое выражение, используя операторы ['+', '-', '*', '/'] и скобки (), чтобы получить значение 24.
При этом действуют следующие правила:
Например, 4 / (1 - 2 / 3) = 4 / (1 / 3) = 12
Например, если cards = [1, 2, 1, 2], то выражение "12 + 12" недопустимо
Верните true, если возможно получить выражение, равное 24
#leetcode679 | #hard #backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM
Time: O(n³ * 3^n * n!)
Space: O(n²)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
37. Sudoku Solver
Company:
Игровое поле представлено в виде двумерного массива символов, где каждая клетка содержит либо цифру '1'–'9', либо символ '.', обозначающий пустую клетку.
Условия решения:
#leetcode37 | #hard #backtracking
Please open Telegram to view this post
VIEW IN TELEGRAM