Вопросы на собеседовании по программированию в Microsoft

вопросы собеседования с майкрософтшпилька
вопросы собеседования с майкрософт

Вопросы о массивах Microsoft

Вопрос 1. Решение LeetCode для непрерывной суммы подмассивов Постановка задачи Непрерывная сумма подмассивов LeetCode Решение. Дан массив целых чисел nums и целое число k, вернуть true, если nums имеет непрерывный подмассив размером не менее двух, сумма элементов которого кратна k, или false в противном случае. Целое число x кратно k, если существует целое число n такое, что x = n * k. 0 всегда...

Подробнее

Вопрос 2. Смещение букв Решение LeetCode Постановка задачи Shifting Letters говорит, что мы дали строку s и сдвиги массива. Теперь для каждого shift[i] = x мы хотим сдвинуть первые i + 1 буквы s, x раз. Мы должны вернуть окончательную строку после применения всех сдвигов. Пример 1: Ввод: s = "abc", сдвиги...

Подробнее

Вопрос 3. Максимальное количество населения в год Решение LeetCode Постановка задачи Максимальное количество населения в год Решение LeetCode гласит, что – Вам дан двумерный целочисленный массив журналов, где каждый logs[i] = [birthi, deathi] указывает годы рождения и смерти i-го человека. Население некоторого года х — это число людей, живущих в течение этого года. I человек считается ...

Подробнее

Вопрос 4. Максимальное количество населения в год Решение LeetCode Постановка задачи: максимальный год населения. Лит-код. Решение гласит: Вам дан двумерный целочисленный массив журналов, где каждый logs[i] = [birthi, deathi] указывает годы рождения и смерти i-го человека. Население какого-то года x равно числу людей, живущих в течение этого года? i-й человек считается населением года x, если x равно ...

Подробнее

Вопрос 5. Лучшее решение LeetCode для места встречи Постановка задачи: Лучшее место встречи Решение Leetcode гласит: Дана сетка бинарной сетки amxn, где каждая единица отмечает дом одного друга, вернуть минимальное общее расстояние пути. Общее расстояние пути равно сумме расстояний между домами друзей и местом встречи. Расстояние рассчитывается с помощью Манхэттенского расстояния, ...

Подробнее

Вопрос 6. Решение с минимальной суммой путей Постановка задачи Минимальная сумма пути Решение LeetCode — «Минимальная сумма пути» говорит, что задана сетка anxm, состоящая из неотрицательных целых чисел, и нам нужно найти путь из верхнего левого угла в нижний правый, который минимизирует сумму всех чисел на пути . Мы можем только двигаться...

Подробнее

Вопрос 7. Минимальная стоимость подъема по лестнице Решение LeetCode Постановка задачи Минимальная стоимость подъема по лестнице LeetCode Решение – Задан целочисленный массив стоимости, где стоимость[i] – стоимость i-й ступени лестницы. Как только вы заплатите стоимость, вы можете подняться на одну или две ступеньки. Вы можете начать либо с шага с индексом 0, либо с шага с...

Подробнее

Вопрос 8. Вставить Удалить GetRandom O(1) Решение Leetcode Постановка задачи Решение LeetCode Insert Delete GetRandom O(1) — «Insert Delete GetRandom O(1)» просит вас реализовать эти четыре функции с временной сложностью O(1). insert(val): вставить val в рандомизированный набор и вернуть true, если элемент изначально отсутствует в наборе. Возвращает false, когда...

Подробнее

Вопрос 9. Ежедневная температура Решение Leetcode Постановка задачи Ежедневные температуры Решение Leetcode: утверждает, что задан массив целых чисел температуры, представляющих дневные температуры, верните ответ в виде массива, такой что answer[i] - это количество дней, которые вам нужно ждать после i-го дня, чтобы получить более теплую температуру. Если нет будущего дня, для которого это возможно, вместо этого оставьте answer[i] == 0. ...

Подробнее

Вопрос 10. Удалить дубликаты из Sorted Array II Leetcode Solution Постановка задачи. Дан целочисленный массив чисел, отсортированный в неубывающем порядке. Удалите несколько дубликатов на месте так, чтобы каждый уникальный элемент встречался не более двух раз. Относительный порядок элементов должен быть сохранен. Поскольку в некоторых языках изменить длину массива невозможно, вместо этого необходимо иметь...

Подробнее

Вопрос 11. K Ближайшие точки к решению Leetcode Постановка задачи K ближайших точек к началу координат Решение LeetCode — «K ближайших точек к началу координат» утверждает, что задан массив точек, координаты x и координаты y представляют координаты на плоскости XY. Нам нужно найти k ближайших точек к началу координат. Обратите внимание, что расстояние между двумя...

Подробнее

Вопрос 12. Следующая перестановка Leetcode Solution Постановка задачи Следующая перестановка Решение LeetCode — «Следующая перестановка» утверждает, что задан массив целых чисел, представляющий собой перестановку первых n натуральных чисел. Нам нужно найти следующую лексикографически наименьшую перестановку данного массива. Замена должна быть на месте и использовать только постоянное дополнительное пространство. ...

Подробнее

Вопрос 13. Максимальная прибыль в планировании работы Leetcode Solution Постановка задачи Максимальная прибыль при планировании заданий Решение LeetCode — «Максимальная прибыль при планировании заданий» утверждает, что вам дано n заданий, каждое из которых начинается с startTime[i] и заканчивается в endTime[i] и получает прибыль в размере profit[i]. ]. Нам нужно вернуть максимальную прибыль, которую мы можем иметь такие...

Подробнее

Вопрос 14. Спички для решения Square Leetcode Постановка задачи Вам дан целочисленный массив спичек, где matchsticks[i] — длина i-й спички. Вы хотите использовать все спички, чтобы сделать один квадрат. Вы не должны ломать ни одну палочку, но вы можете связать их, и каждая спичка должна быть использована ровно один раз. Верните true, если вы можете сделать этот квадрат, и false в противном случае. Пример ввода: спички = ...

Подробнее

Вопрос 15. Решение для улавливания дождевой воды Постановка задачи Решение LeetCode для захвата дождевой воды – «Захват дождевой воды» утверждает, что задан массив высот, который представляет собой карту высот, где ширина каждого столбца равна 1. Нам нужно найти количество воды, попавшей в ловушку после дождя. Пример: Ввод: высота = [0,1,0,2,1,0,1,3,2,1,2,1] Вывод: 6 Объяснение: Проверить...

Подробнее

Вопрос 16. Разделение на K подмножеств с равной суммой Решение Leetcode Постановка задачи Разделение на K подмножеств с равной суммой Решение LeetCode — «Разбиение на K подмножеств с равной суммой» утверждает, что вам дан целочисленный массив nums и целое число k, верните true, если возможно иметь k непустых подмножеств, суммы которых все равны. Пример: Ввод: nums = [4,3,2,3,5,2,1], k = 4 Вывод: ...

Подробнее

Вопрос 17. Coin Change 2 Решение для литкода Постановка задачи Размен монет 2 Решение LeetCode — «Раздача монет 2» утверждает, что задан массив монет с различными целыми числами и целое число, представляющее общую сумму денег. Нам нужно вернуть подсчет общего количества различных возможных комбинаций, которые в сумме составляют сумму. ...

Подробнее

Вопрос 18. Решение для прыжка лягушки Постановка задачи Решение LeetCode для прыжка лягушки. «Прыжок лягушки» утверждает, что при наличии списка камней (позиций), отсортированных в порядке возрастания, определить, может ли лягушка пересечь реку, приземлившись на последний камень (последний индекс массива). Изначально лягушка находится на первом камне и...

Подробнее

Вопрос 19. Уникальное решение для литкода Paths II Постановка задачи Решение LeetCode Unique Paths II — «Unique Paths II» утверждает, что при заданной сетке mxn робот начинает с верхнего левого угла сетки. Нам нужно найти общее количество способов добраться до нижнего правого угла сетки. ...

Подробнее

Вопрос 20. Поиск решения по литкоду 2D Matrix II Постановка задачи Поиск в 2D-матрице II Решение LeetCode — «Поиск в 2D-матрице II» просит вас найти эффективный алгоритм, который ищет целевое значение в целочисленной матричной матрице mxn. Целые числа в каждой строке, как и в столбце, сортируются в порядке возрастания. Пример: Вход: матрица = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24, 18,21,23,26,30],[5]], цель = XNUMX Вывод: правда...

Подробнее

Вопрос 21. Максимальная длина составной строки с уникальными символами Решение Leetcode Постановка задачи. Максимальная длина составной строки с уникальными символами. Решение LeetCode. «Максимальная длина составной строки с уникальными символами» говорит о том, что вам дан массив строк, и вам нужно выбрать любую подпоследовательность данного массива и соединить их. струны для формирования...

Подробнее

Вопрос 22. Решение для кратчайшего расстояния между словами Постановка задачи Кратчайшее расстояние до слова Решение LeetCode — говорит, что вам дан массив строк и два разных слова. Нам нужно вернуть кратчайшее расстояние между этими двумя словами, которые появляются во входной строке. Пример: Ввод: wordsDict = ["практика", "делает", "совершенно", "кодирование", "делает"], word1 = "кодирование", word2 = "практика" Выход: 3 Объяснение: Слово "кодирование" встречается в позиция 4. ...

Подробнее

Вопрос 23. Скользящее среднее из потока данных Решение Leetcode Постановка задачи Скользящее среднее из потока данных Решение LeetCode — «Скользящее среднее из потока данных» утверждает, что задан поток целых чисел и размер окна k. Нам нужно вычислить скользящее среднее всех целых чисел в скользящем окне. Если количество элементов в...

Подробнее

Вопрос 24. Установить решение Matrix Zeroes Leetcode Постановка задачи Решение Set Matrix Zeroes LeetCode — «Set Matrix Zeroes» утверждает, что вам дана целочисленная матричная матрица mxn. Нам нужно изменить входную матрицу таким образом, чтобы, если какая-либо ячейка содержит элемент 0, затем установить всю ее строку и столбец. до 0 с. Вы должны сделать это в...

Подробнее

Вопрос 25. Отсутствует номер Leetcode Решение Постановка задачи. Решение LeetCode для отсутствующего числа. «Отсутствующее число» утверждает, что задан массив размера n, содержащий n различных чисел между [0,n]. Нам нужно вернуть число, которое отсутствует в диапазоне. Пример: Ввод: nums = [3,0,1] Вывод: 2 Объяснение: Легко заметить, что все ...

Подробнее

Вопрос 26. Проектирование стека с операцией приращения Решение Leetcode Постановка задачи Проектирование стека с операцией приращения Решение Leetcode — утверждает, что нам необходимо спроектировать стек, который эффективно поддерживает следующие операции. Назначьте максимальную емкость стека. Эффективно выполнять операцию push, если размер стека строго меньше максимальной емкости ...

Подробнее

Вопрос 27. Перемешать решение Leetcode для массива Задача Shuffle the Array Leetcode Solution предоставляет нам массив длиной 2n. Здесь 2n означает, что длина массива четная. Затем нам говорят перетасовать массив. Здесь перемешивание не означает, что нам нужно случайным образом перемешать массив, но конкретный способ ...

Подробнее

Вопрос 28. Решение 3Sum Leetcode Постановка задачи Для массива из n целых чисел существуют ли элементы a, b, c в числах такие, что a + b + c = 0? Найдите все уникальные тройки в массиве, который дает нулевую сумму. Обратите внимание: набор решений не должен содержать повторяющихся триплетов. Пример №1 [-1,0,1,2, -1,4] ...

Подробнее

Вопрос 29. Вставить интервал решения Leetcode Задача «Вставить интервал» Leetcode Solution предоставляет нам список некоторых интервалов и один отдельный интервал. Затем нам предлагается вставить этот новый интервал в список интервалов. Итак, новый интервал может пересекаться с интервалами, которые уже есть в списке, или он может ...

Подробнее

Вопрос 30. Комбинированное решение Leetcode Комбинированная сумма задачи Leetcode Solution предоставляет нам массив или список целых чисел и цель. Нам говорят найти комбинации, которые можно составить, используя эти целые числа, любое количество раз, которое в сумме дает заданную цель. Итак, более формально, мы можем использовать данный ...

Подробнее

Вопрос 31. Решение Leetcode для периметра острова Постановка задачи В этой задаче нам дается сетка в виде двумерного массива. grid [i] [j] = 2 представляет собой воду в этой точке, а grid [i] [j] = 0 представляет землю. Ячейки сетки соединяются по вертикали / горизонтали, но не по диагонали. Есть ровно один остров (связная составляющая суши ...

Подробнее

Вопрос 32. Максимальное решение Leetcode для подмассивов Постановка задачи. Для целочисленного массива nums найдите непрерывный подмассив (содержащий хотя бы одно число) с наибольшей суммой и верните его сумму. Пример: nums = [-2,1, -3,4, -1,2,1, -5,4] 6 Объяснение: [4, -1,2,1] имеет наибольшую сумму = 6. nums = [- 1] -1 Подход 1 (Разделяй и властвуй) В этом подходе ...

Подробнее

Вопрос 33. Найдите N уникальных целых чисел, чтобы получить нулевое решение Leetcode Задача Найти N уникальных целых чисел в сумме до нуля Leetcode Solution предоставляет нам целое число. Он просит нас вернуть n уникальных целых чисел, которые в сумме дают 0. Итак, вопрос довольно прост для понимания. Итак, прежде чем погрузиться в раствор. Давайте посмотрим на ...

Подробнее

Вопрос 34. Разделение массива на три части с помощью решения Leetcode с равной суммой Задача «Разделить массив на три части с помощью равной суммы» Leetcode Solution предоставляет нам массив или вектор и спрашивает, есть ли три возможных раздела последовательности. Здесь под разбиением мы подразумеваем наличие двух индексов i, j таких, что сумма элементов с самого начала ...

Подробнее

Вопрос 35. Поиск общих символов Решение Leetcode Постановка задачи В этой задаче нам дан массив строк. Нам нужно напечатать список всех символов, которые появляются в каждой строке в массиве (включая дубликаты). То есть, если символ появляется 2 раза в каждой строке, но не 3 раза, нам нужно, чтобы он был ...

Подробнее

Вопрос 36. Найти все числа, исчезнувшие в решении Leetcode для массива Постановка задачи В этой задаче нам дан массив целых чисел. Он содержит элементы от 1 до N, где N = размер массива. Однако есть некоторые элементы, которые исчезли, и на их месте остались некоторые дубликаты. Наша цель - вернуть массив ...

Подробнее

Вопрос 37. Решение Majority Element II Leetcode В этой задаче нам дан массив целых чисел. Цель состоит в том, чтобы найти все элементы, которые встречаются в массиве более ⌊N / 3⌋ раз, где N = размер массива, а ⌊ ⌋ - оператор пола. Нам нужно вернуть массив ...

Подробнее

Вопрос 38. Решение Leetcode для массива относительной сортировки В этой задаче нам даны два массива натуральных чисел. Все элементы второго массива различны и присутствуют в первом массиве. Однако первый массив может содержать повторяющиеся элементы или элементы, которых нет во втором массиве. Нам нужно отсортировать первый массив ...

Подробнее

Вопрос 39. Решение Leetcode Треугольника II Паскаля Постановка задачи В этой задаче нам дан индекс строки (i) треугольника Паскаля. Нам нужно создать линейный массив, содержащий значения i-й строки, и вернуть его. Индекс строки начинается с 0. Мы знаем, что треугольник Паскаля - это треугольник, в котором каждое число является ...

Подробнее

Вопрос 40. Уникальное решение Leetcode Paths Проблема Уникальные пути Leetcode Solution утверждает, что вам даны два целых числа, представляющих размер сетки. Используя размер сетки, длину и ширину сетки. Нам нужно найти количество уникальных путей от верхнего левого угла сетки до ...

Подробнее

Вопрос 41. Количество хороших пар Решение Leetcode Постановка задачи. В этой задаче задан массив целых чисел, и мы должны определить общее количество хороших пар (a [i], a [j]), где a [i] = a [j]. Пример nums = [1,2,3,1,1,3] 4 Объяснение: Есть 4 хороших пары с индексами (0,3), (0,4), (3,4), (2,5). [1,1,1,1] 6 Пояснение: ...

Подробнее

Вопрос 42. Найти счастливое целое число в решении Leetcode для массива Постановка задачи В задаче «Найти счастливое целое число в массиве» нам дан массив, в котором целое число называется счастливым, если его частота в массиве равна его значению. Наша задача - вернуть наибольшее счастливое число. Если такого числа не существует, мы ...

Подробнее

Вопрос 43. Решение Leetcode для сбалансированного двоичного дерева Двоичное дерево является сбалансированным по высоте, если разница высот левого и правого поддерева каждого узла в дереве не превышает 1. В этой задаче мы собираемся проверить сбалансированное двоичное дерево. Пример 2/1/4 Несбалансированный 1 / \ 2 ...

Подробнее

Вопрос 44. Решение Leetcode для объединения отсортированных массивов В задаче «Объединить отсортированные массивы» нам даны два массива, отсортированных в порядке убывания. Первый массив заполнен не полностью, и в нем достаточно места для размещения всех элементов второго массива. Мы должны объединить два массива так, чтобы первый массив содержал элементы ...

Подробнее

Вопрос 45. Поиск в решении Leetcode с вращающимся отсортированным массивом Рассмотрим отсортированный массив, но был выбран один индекс, и в этой точке массив был повернут. Теперь, когда массив был повернут, вам необходимо найти конкретный целевой элемент и вернуть его индекс. В случае, если элемент отсутствует, верните -1. Проблема в общем ...

Подробнее

Вопрос 46. Поиск Вставить позицию Leetcode Решение В этой задаче нам дан отсортированный массив и целевое целое число. Нам нужно найти его положение вставки поиска. Если целевое значение присутствует в массиве, верните его индекс. Верните индекс, по которому должна быть вставлена ​​цель, чтобы сохранить порядок сортировки (в ...

Подробнее

Вопрос 47. Решение Plus One Leetcode Постановка задачи В задаче «Плюс один» нам дан массив, в котором каждый элемент массива представляет собой цифру числа. Полный массив представляет собой число. Нулевой индекс представляет старший бит числа. Мы можем предположить, что в ...

Подробнее

Вопрос 48. K-й по величине элемент в массиве Leetcode Solutions В этой задаче мы должны вернуть k-й по величине элемент в несортированном массиве. Обратите внимание, что в массиве могут быть дубликаты. Итак, мы должны найти K-й по величине элемент в отсортированном порядке, а не отдельный K-й по величине элемент. Пример A = {4, 2, 5, 3 ...

Подробнее

Вопрос 49. K-е решение Leetcode с отсутствующим положительным числом Постановка задачи В задаче «K-е пропущенное положительное число» нам дан массив arr, который сортируется в строго возрастающем порядке, и число k. Наша задача - найти K-е положительное пропущенное число в массиве. Пример arr = [1,2,3,4], k = 2 6 Пояснение: Как ...

Подробнее

Вопрос 50. Число предположений выше или ниже II Постановка задачи «Угадай число выше или ниже II» гласит, что мы собираемся сыграть в игру, которая называется «Угадай игру». Игра говорит, что я выбираю число от 1 до n. Всякий раз, когда вы угадаете номер, который я не выбрал, я скажу вам ...

Подробнее

Вопрос 51. Запросы количества отдельных элементов в подмассиве Мы дали массив целых чисел и несколько запросов, и нам нужно узнать количество всех отдельных элементов, которые у нас есть в данном диапазоне, запрос состоит из двух чисел слева и справа, это заданный диапазон, с этим учитывая диапазон мы ...

Подробнее

Вопрос 52. Минимальные свопы, необходимые для объединения всех элементов, меньших или равных k Задача «Минимальные перестановки, необходимые для объединения всех элементов, меньших или равных k», гласит, что у вас есть целочисленный массив. В постановке задачи предлагается определить наименьшее количество свопов, которые потребуются для объединения элементов, которые меньше или равны ...

Подробнее

Вопрос 53. Найти первую и последнюю позицию элемента в решении Leetcode для отсортированного массива Постановка задачи В этой статье, озаглавленной «Найти первую и последнюю позицию элемента в решении Leetcode для отсортированного массива», мы обсудим решение проблемы Leetcode. В данной задаче нам дан массив. Нам также дается целевой элемент. Элементы в массиве упорядочены по ...

Подробнее

Вопрос 54. Лучшее время для покупки и продажи решения Stock II Leetcode Постановка задачи В задаче «Лучшее время для покупки и продажи акций II» нам дается массив, каждый элемент которого содержит цену данной акции в этот день. Определение сделки - покупка одной акции и продажа этой одной акции ...

Подробнее

Вопрос 55. Найти сумму всех уникальных сумм подмассива для данного массива Предположим, у вас есть массив целых чисел. Задача «Найти сумму всей уникальной суммы подмассивов для данного массива» требует найти сумму всех уникальных подмассивов (сумма подмассивов - это сумма элементов каждого подмассива). Под уникальной суммой подмассивов мы подразумевали, что нет подмассивов ...

Подробнее

Вопрос 56. Самый длинный подмассив, содержащий не более K различных элементов Задача «Самый длинный подмассив, не имеющий более K различных элементов» утверждает, что предположим, что у вас есть массив целых чисел, в формулировке задачи предлагается найти самый длинный подмассив, содержащий не более k различных элементов. Пример arr [] = {4, 3, 5, 2, 1, 2, 0, 4, 5} ...

Подробнее

Вопрос 57. Построить двоичное дерево из заданного представления родительского массива Задача «Построить двоичное дерево из заданного представления родительского массива» утверждает, что вам дан массив. Этот входной массив представляет собой двоичное дерево. Теперь вам нужно построить двоичное дерево на основе этого входного массива. В массиве хранится индекс родительского узла по каждому индексу. ...

Подробнее

Вопрос 58. Найдите любой из нескольких повторяющихся элементов в массиве только для чтения проблема «Найти любой из нескольких повторяющихся элементов в массиве только для чтения» утверждает, что предполагается, что вам дан массив размера (n + 1) только для чтения. Массив содержит целые числа от 1 до n. Ваша задача - найти любой из повторяющихся элементов в ...

Подробнее

Вопрос 59. Найдите четыре элемента, сумма которых равна заданному значению (Hashmap) Задача «Найти четыре элемента, которые суммируются с заданным значением (Hashmap)» утверждает, что у вас есть целочисленный массив и число, называемое суммой. В постановке задачи предлагается определить, присутствуют ли в массиве четыре элемента, которые в сумме дают заданное значение «сумма». Если это правда, то функция ...

Подробнее

Вопрос 60. Самая длинная подпоследовательность, при которой разница между смежными объектами равна одному Задача «Самая длинная подпоследовательность, при которой разница между смежными элементами равна единице» утверждает, что вам дан целочисленный массив. Теперь вам нужно найти длину самой длинной подпоследовательности, при которой разность соседних элементов равна 1. Пример 1 2 3 4 7 5 9 4 6 Пояснение Как ...

Подробнее

Вопрос 61. Вывести все подмассивы с нулевой суммой Вам дан целочисленный массив, ваша задача - распечатать все возможные подмассивы с суммой равной 0. Поэтому нам нужно вывести все подмассивы с нулевой суммой. Пример arr [] = {-0, 2, -4, -2, 1, -1, 3, 1, 5, -7, -11} Подмассив, найденный из индекса 6 ...

Подробнее

Вопрос 62. Самая длинная битоническая подпоследовательность Предположим, у вас есть массив целых чисел, в постановке задачи предлагается определить самую длинную битонную подпоследовательность. Битонная последовательность массива рассматривается как последовательность, которая сначала увеличивается, а затем уменьшается. Пример arr [] = {1,4,2,76,43,78,54,32,1,56,23} 7 Пояснение 1 ⇒ 4 ⇒ 76 ⇒ 78 ⇒ 54 ...

Подробнее

Вопрос 63. Проверить в двоичном массиве число, представленное подмассивом, нечетное или четное Задача «Проверить в двоичном массиве, является ли число, представленное подмассивом, нечетным или четным» означает, что вам даны двоичный массив и диапазон. Массив состоит из чисел в виде нулей и единиц. В постановке задачи предлагается узнать представленное число ...

Подробнее

Вопрос 64. Проблема с золотым рудником Постановка задачи «Задача золотого рудника» гласит, что вам дана двумерная сетка, в каждой ячейке которой помещены неотрицательные монеты. Изначально майнер стоит в первом столбце, но для строки нет ограничений. Он может стартовать в любом ряду. ...

Подробнее

Вопрос 65. Самая длинная возрастающая последовательная подпоследовательность Последствия - еще одна тема, любимая интервьюерами. Их настройка всегда может дать им новые возможности для тестирования кандидатов. Он может проверить способность кандидата думать и анализировать вещи и предлагать лучшие и оптимальные решения. Сегодня мы решаем задачу подпоследовательности, которая будет делать ...

Подробнее

Вопрос 66. Лучшее время для покупки и продажи акций Постановка задачи Задача «Лучшее время для покупки и продажи акций» утверждает, что вам дан массив цен длины n, где в i-м элементе хранится цена акций на i-й день. Если мы сможем совершить только одну транзакцию, то есть купить в один день и ...

Подробнее

Вопрос 67. K наиболее часто встречающихся элементов Постановка задачи В топ-K часто встречающихся элементов мы дали массив nums [], найдите k наиболее часто встречающихся элементов. Примеры nums [] = {1, 1, 1, 2, 2, 3} k = 2 1 2 nums [] = {1} k = 1 1 Наивный подход для сборки наиболее часто встречающихся элементов K ...

Подробнее

Вопрос 68. Сортировать массив в соответствии с порядком, определенным другим массивом Постановка задачи Вам даны два массива целых чисел arr1 [] и arr2 []. Задача «Сортировать массив в соответствии с порядком, определенным другим массивом» требует отсортировать первый массив в соответствии со вторым массивом, чтобы числа в первом массиве были отсортированы относительно всех ...

Подробнее

Вопрос 69. Минимальное время, необходимое для гниения всех апельсинов Постановка задачи Задача «Минимальное время, необходимое для гниения всех апельсинов» утверждает, что вам дан 2D-массив, каждая ячейка которого имеет одно из трех возможных значений 0, 1 или 2. 0 означает пустую ячейку. 1 означает свежий апельсин. 2 означает тухлый апельсин. Если гнилой ...

Подробнее

Вопрос 70. Максимальный подмассив продукта Постановка задачи Задача «Максимальный подмассив продукта» утверждает, что вам дан массив целых чисел, содержащий как положительные, так и отрицательные числа. В постановке задачи предлагается узнать максимальное произведение подмассивов. Пример arr [] = {2, -2, 3, 5} 15 Пояснение Элементы во вложенном массиве ...

Подробнее

Вопрос 71. Найти минимум в повернутом отсортированном массиве Постановка задачи «Найти минимум в повернутом отсортированном массиве» гласит, что вам дан отсортированный массив размера n, который вращается по некоторому индексу. Найдите минимальный элемент в массиве. Пример a [] = {5, 1, 2, 3, 4} 1 Объяснение: Если мы расположим массив в отсортированном ...

Подробнее

Вопрос 72. Реализация Deque с использованием кругового массива Постановка задачи «Реализация Deque с использованием кругового массива» требует реализовать следующие функции Deque (дважды завершенной очереди) с использованием кругового массива insertFront (x): вставить элемент x перед Deque insertRear (x): вставить элемент x позади Deque deleteFront (): удалить элемент из ...

Подробнее

Вопрос 73. Удвойте первый элемент и переместите ноль в конец Постановка задачи. Предположим, у вас есть массив целых чисел. Здесь «0» не является числом, которое считается вводом. Здесь недопустимый ввод. Задача «Удвоить первый элемент и переместить ноль в конец» просит переставить массив таким образом, чтобы число ...

Подробнее

Вопрос 74. Найдите первый повторяющийся элемент в массиве целых чисел Постановка задачи Найдите первый повторяющийся элемент в массиве целых чисел. Задача состоит в том, что вам дан массив целых чисел. Он просит найти первый повторяющийся элемент из массива и распечатать это число. Пример arr [] = {2,6,9,3,1,9,1} 9 Объяснение: В данном массиве есть ...

Подробнее

Вопрос 75. Проверьте, что данный массив размера n может представлять BST из n уровней или нет Постановка задачи. Для массива с n элементами проверьте, что данный массив размера n может представлять BST n уровней или нет. То есть проверить, может ли двоичное дерево поиска, построенное с использованием этих n элементов, представлять BST n уровней. Примеры arr [] = {10, 8, 6, 9, ...

Подробнее

Вопрос 76. Наибольшая прямоугольная подматрица, сумма которой равна 0 Постановка задачи Найдите подматрицу максимального размера в двумерном массиве, сумма которого равна нулю. Подматрица - это не что иное, как 2D-массив внутри данного 2D-массива. Итак, у вас есть матрица целых чисел со знаком, вам нужно вычислить сумму подматриц и найти матрицу с ...

Подробнее

Вопрос 77. Подпоследовательность увеличения максимальной суммы Постановка задачи. Вам дан массив целых чисел. Ваша задача - найти подпоследовательность максимальной суммы в массиве таким образом, чтобы числа в подпоследовательности были упорядочены отсортированным способом в порядке возрастания. Подпоследовательность - это не что иное, как последовательность, которую мы ...

Подробнее

Вопрос 78. Непрерывный подмассив наибольшей суммы Постановка задачи. Вам дан массив целых чисел. В постановке задачи предлагается найти непрерывный подмассив наибольшей суммы. Это ничего не значит, кроме как найти подмассив (непрерывные элементы), который имеет наибольшую сумму среди всех других подмассивов в данном массиве. Пример arr [] = {1, -3, 4, ...

Подробнее

Вопрос 79. Умножение матричной цепочки В задаче умножения цепочки матриц II мы задали размерность матриц, находим такой порядок их умножения, чтобы количество операций, участвующих в умножении всех матриц, было минимальным. Предположим, у вас есть 3 матрицы A, B, C размеров axb, bx ...

Подробнее

Вопрос 80. Сортированный массив в сбалансированный BST В отсортированном массиве для сбалансированной задачи BST мы предоставили массив в отсортированном порядке, построим сбалансированное двоичное дерево поиска из отсортированного массива. Примеры Входной arr [] = {1, 2, 3, 4, 5} Выходной предварительный заказ: 3 2 1 5 4 Входной arr [] = {7, 11, 13, 20, 22, ...

Подробнее

Вопрос 81. Подмножество Leetcode В задаче Subset Leetcode мы дали набор различных целых чисел, nums, вывести все подмножества (набор мощности). Примечание. Набор решений не должен содержать повторяющихся подмножеств. Массив A является подмножеством массива B, если a можно получить из B, удалив некоторые (возможно, ноль ...

Подробнее

Вопрос 82. Перемешать массив Дан массив или набор, содержащий n элементов. Здесь элементы уникальны или нет повторения. Перемешайте массив (или набор) чисел без дубликатов. Пример // Инициируйте массив с наборами 2, 4, 3 и 1. int [] nums = {2, 4, 3, 1}; Перемешать объект = ...

Подробнее

Вопрос 83. Разделение массива на пары с суммой, кратной K Разделение массива на пары с суммой, кратной K, - это проблема, которую время от времени задают в интервью с различными настройками. Те, кто меня знают, знают мою привычку превращать эти проблемы в истории. В этой статье давайте рассмотрим эту проблему. Ситуация для понимания ...

Подробнее

Вопрос 84. Подсчитайте отдельные элементы в каждом окне размера K Подмножества - это то, с чем мы имеем дело уже некоторое время. В последнем эпизоде ​​мы рассмотрели количество подмножеств, которые мы можем создать с различными четными числами. На этот раз мы подсчитываем отдельные элементы в каждом окне размера K. Раздел-1 О задаче. Учитывая несортированный массив ...

Подробнее

Вопрос 85. Слова поиска Поиск слов - это что-то вроде головоломок с поиском слов, когда-то в нашей жизни. Сегодня я предлагаю к столу модифицированный кроссворд. Мои читатели должны быть немного озадачены тем, о чем я говорю. Не теряя времени, перейдем к постановке задачи Может ...

Подробнее

Вопрос 86. Вставить Удалить GetRandom В задаче Insert Delete GetRandom нам нужно разработать структуру данных, которая поддерживает все последующие операции в среднем за время O (1). insert (val): вставляет значение элемента в набор, если оно еще не присутствует. remove (val): удаляет элемент val из набора, если он присутствует. getRandom: возвращает случайный элемент из текущего набора ...

Подробнее

Вопрос 87. Объединить перекрывающиеся интервалы В задаче слияния перекрывающихся интервалов мы дали набор интервалов, объединить и вернуть все перекрывающиеся интервалы. Пример ввода: [[2, 3], [3, 4], [5, 7]] Вывод: [[2, 4], [5, 7]] Объяснение: Мы можем объединить [2, 3] и [3] , 4] вместе, чтобы сформировать [2, 4] Подход для поиска слияния ...

Подробнее

Вопрос 88. Медиана двух отсортированных массивов Даны два отсортированных массива A и B размера n и m соответственно. Найдите медиану окончательного отсортированного массива, полученного после слияния данных двух массивов, или, другими словами, мы говорим, что найдите медиану двух отсортированных массивов. (Ожидаемая временная сложность: O (log (n))) Подход 1 для ...

Подробнее

Вопрос 89. Максимальный подмассив продукта В задаче о подмассиве максимального произведения мы дали массив целых чисел, найдите непрерывный подмассив, содержащий хотя бы один элемент, который имеет наибольшее произведение. Пример Arr = [0, -1, 0, 1, 2, -3] Максимальный продукт = 2 Arr = [- 1, -1, -1] Максимальный продукт = -1 Arr = [0, -1, 0, - 2, 0] ...

Подробнее

Вопрос 90. Минимальный размер суммы подмассива Для массива nums положительного целого числа и суммы s найдите минимальный размер непрерывного подмассива nums, сумма которого равна или больше s (заданное значение). Пример ввода: nums [] = {2, 3, 1, 2, 4, 3} s = 7 Вывод: 2 {Subarray [4, ...

Подробнее

Вопрос 91. Поиск элемента в отсортированном повернутом массиве В задаче поиска в отсортированном повернутом массиве мы дали отсортированный и повернутый массив и элемент, проверьте, присутствует ли данный элемент в массиве или нет. Примеры Входные числа [] = {2, 5, 6, 0, 0, 1, 2} target = 0 Выходные данные true Входные числа [] = {2, ...

Подробнее

Вопрос 92. Максимальный подмассив продукта Дан массив из n целых чисел, найдите максимальный продукт, полученный из непрерывного подмассива данного массива. Примеры Вход arr [] = {-2, -3, 0, -2, -40} Выход 80 Вход arr [] = {5, 10, 6, -2, 1} Выход 300 Вход arr [] = {-1 , -4, -10, 0, 70} Выход 70 ...

Подробнее

Вопрос 93. Установить нули матрицы В задаче набора нулей матрицы мы задали матрицу (n X m), если элемент равен 0, задали всю его строку и столбец 0. Примеры Входные данные: {[1, 1, 1] [1, 0, 1] [1, 1, 1]} Вывод: {[1, 0, 1] [0, 0, 0] [1, 0, 1] ...

Подробнее

Вопрос 94. 3 Сумма В задаче 3 Sum мы дали массив nums из n целых чисел, находим все уникальные тройки, сумма которых равна 0. Пример ввода: nums = {-1, 0, 1, 2, -1, -4} Вывод: { -1, 0, 1}, {-1, 2, -1} Наивный подход к задаче трех сумм Подход грубой силы ...

Подробнее

Вопрос 95. Найдите повторяющийся номер Для массива nums, содержащего (n + 1) элементов, и каждый элемент находится в диапазоне от 1 до n. Если есть только один повторяющийся элемент, найдите повторяющийся номер. Примеры Вход: nums = {1, 3, 4, 2, 2} Выход: 2 Вход: nums = {3, 1, 3, 4, 2} Выход: 3 Наивный ...

Подробнее

Вопрос 96. Минимальная сумма пути В задаче о минимальной сумме пути мы задали матрицу размера a × b, состоящую из неотрицательных чисел. Ваша задача - найти путь сверху слева направо вниз, который минимизирует сумму, состоящую из всех чисел, которые попадают в путь, который вы нашли. Примечание: двигаться можно только ...

Подробнее

Вопрос 97. Найдите повторяющийся элемент Учитывая массив целых чисел размера n + 1, где каждый элемент массива находится между 1 и n (включительно), в массиве есть один повторяющийся элемент, найдите повторяющийся элемент. Метод грубой силы - подход 1 для поиска повторяющегося элемента. Для каждого i-го элемента запустите цикл ...

Подробнее

Вопрос 98. Следующий элемент большей частоты В следующей задаче с более частым элементом мы дали массив a [] размера n, содержащий числа. Для каждого числа в массиве print число справа в массиве с частотой, большей, чем у текущего числа. Пример ввода a [] = {1, 1, ...

Подробнее

Вопрос 99. Решение LeetCode для улавливания дождевой воды В задаче LeetCode «Улавливание дождевой воды» мы задали N неотрицательных целых чисел, представляющих карту высот, а ширина каждой полосы равна 1. Мы должны найти количество воды, которое может быть захвачено в приведенной выше структуре. Пример Давайте разберемся, что на примере Для ...

Подробнее

Вопрос 100. Прыжок игры В игре с прыжками мы дали массив неотрицательных целых чисел, вы изначально располагаетесь в первом индексе массива. Каждый элемент в массиве представляет вашу максимальную длину прыжка в этой позиции. Определите, можете ли вы достичь последнего индекса. Пример ввода: arr = [2,3,1,1,4] ...

Подробнее

Вопрос 101. Комбинированная сумма В задаче комбинированной суммы мы дали массив положительных целых чисел arr [] и сумму s, найдите все уникальные комбинации элементов в arr [], где сумма этих элементов равна s. Один и тот же повторяющийся номер может быть выбран из arr [] неограниченное количество раз. Элементы ...

Подробнее

Вопрос 102. Искать в отсортированном повернутом массиве Поиск элемента в отсортированном повернутом массиве можно найти с помощью двоичного поиска за время O (logn). Цель этой публикации - найти заданный элемент в отсортированном повернутом массиве за время O (logn). Приведен пример отсортированного повернутого массива. Пример ввода: arr [] = {7,8,9,10,1,2,3,5,6}; ...

Подробнее

Вопрос 103. Уникальные пути Дана двухмерная сетка mxn, и вы стоите в самой верхней и крайней левой ячейке сетки. т.е. ячейка, расположенная в (2). Найдите количество уникальных путей, по которым можно добраться до ячейки, расположенной в (m, n), от ячейки, расположенной в (1,1) ...

Подробнее

Вопрос 104. Максимальный подмассив В задаче «Максимальный подмассив» мы задали целочисленный массив nums, находим непрерывный подмассив с наибольшей суммой и выводим максимальное значение подмассива суммы. Пример Входные числа [] = {-2, 1, -3, 4, -1, 2, 1, -5, 4} Выход 6 Алгоритм Цель состоит в том, чтобы найти ...

Подробнее

Вопрос 105. Интервалы слияния В задаче объединения интервалов мы задали набор интервалов вида [l, r], объединяющих перекрывающиеся интервалы. Примеры Входные данные {[1, 3], [2, 6], [8, 10], [15, 18]} Выходные данные {[1, 6], [8, 10], [15, 18]} Входные данные {[ 1, 4], [1, 5]} Выходные данные {[1, 5]} Наивный подход к объединению интервалов ...

Подробнее

Вопрос 106. Пиковый индекс в горном массиве Что такое пиковый индекс в задаче о горном массиве? Массив можно назвать горным массивом, если он показывает следующие свойства: Длина данного массива должна быть больше или равна 3 LENGTH> = 3. Может быть только один пик или самый большой элемент ...

Подробнее

Вопрос 107. Сумма подмассива максимального размера равна k В поле Максимальный размер подмассива сумма равна k мы дали массив целых чисел и значение k. Вам нужно найти длину самого длинного подмассива, сумма которого равна k. Если такой подмассив не существует, верните 0. Один из подходов - использовать хеш-таблицу и проверить ...

Подробнее

Вопрос 108. Отсутствующий номер В задаче «Отсутствующее число» мы дали массив размера N, содержащий число от 0 до N. Все значения в массиве уникальны. Нам нужно найти недостающее число, которого нет в массиве, и это число находится в диапазоне от 0 до N. Здесь ...

Подробнее

Вопрос 109. Объединить отсортированный массив В задаче слияния отсортированных массивов мы дали два отсортированных массива в порядке возрастания. Сначала во вводе мы указали число, инициализированное для array1 и array2. Эти двузначные числа - N и M. Размер array1 равен сумме N и M. В массиве 1 сначала ...

Подробнее

Вопрос 110. Повернуть массив Поворот массива - это проблема, в которой мы задали массив размера N. Мы должны повернуть массив в правильном направлении. Каждый элемент сдвигается на одну позицию вправо, и последний элемент массива переходит на первую позицию. Итак, мы дали значение K ...

Подробнее

Вопрос 111. Умножение цепочки матриц с использованием динамического программирования Умножение цепочки матриц - это метод, с помощью которого мы находим лучший способ умножения заданных матриц. Все мы знаем, что матричное умножение ассоциативно (A * B = B * A) по своей природе. Итак, у нас есть много заказов, в которых мы хотим произвести умножение. Собственно, в этом алгоритме ...

Подробнее

Вопрос 112. Сумма подмассива равна k Дан целочисленный массив и целое число k. Найдите общее количество смежных подмассивов данного массива, сумма элементов которых равна k. Пример входа 1: arr [] = {5,0,5,10,3,2, -15,4} k = 5 Выход: 7 Вход 2: arr [] = {1,1,1,2,4, -2} k = 2 Выход: 4 Пояснение: рассмотрим пример-1 ...

Подробнее

Вопрос 113. Объединить K отсортированных массивов и распечатать отсортированный вывод Постановка задачи В задаче «Объединить K отсортированных массивов и распечатать отсортированный вывод» мы дали k отсортированных массивов разного размера. Напишите программу для объединения этих массивов и распечатайте окончательный отсортированный массив в качестве вывода. Формат ввода Первая строка содержит целое число n. Следующие n строк содержат ...

Подробнее

Вопрос 114. Найдите минимальный элемент в отсортированном и повернутом массиве Постановка задачи В задаче «Найти минимальный элемент в отсортированном и повернутом массиве» мы дали отсортированному массиву a []. Этот массив вращается в какой-то неизвестной точке, найдите минимальный элемент в этом массиве. Формат ввода Первая и единственная строка, содержащая целое значение n. ...

Подробнее

Вопрос 115. Покупка и продажа акций для получения максимальной прибыли Постановка задачи В задаче «Покупка акций и продажа для получения максимальной прибыли» мы предоставили массив, который содержит цену акций на каждый день, чтобы найти максимальную прибыль, которую вы можете получить, покупая и продавая в эти дни. Здесь мы можем покупать и продавать несколько раз, но только после продажи ...

Подробнее

Вопрос 116. Объединить перекрывающиеся интервалы II Постановка задачи В задаче «Объединить перекрывающиеся интервалы II» мы дали набор интервалов. Напишите программу, которая объединит перекрывающиеся интервалы в один и распечатает все неперекрывающиеся интервалы. Формат ввода Первая строка содержит целое число n. Вторая строка содержит n пар, каждая из которых ...

Подробнее

Вопрос 117. Максимальная сумма подмассива с использованием функции Divide and Conquer Постановка задачи В задаче «Максимальная сумма подмассива с использованием функции« разделяй и властвуй »» мы дали массив как положительных, так и отрицательных целых чисел. Напишите программу, которая найдет наибольшую сумму непрерывного подмассива. Формат ввода Первая строка содержит целое число N. Вторая строка содержит массив ...

Подробнее

Вопрос 118. Проблема сортировки блинов Постановка задачи «Задача сортировки блинов» основана на сортировке блинов. Учитывая несортированный массив, нам нужно написать программу, которая использует только операцию переворота для сортировки массива. Переворот - это операция, которая переворачивает массив. Формат ввода Первая строка содержит целое число N. Вторая строка содержит N, разделенные пробелами ...

Подробнее

Вопрос 119. Сортировка блинов Постановка задачи В задаче «Сортировка блинов» мы задали массив целых чисел A []. Отсортируйте массив, выполнив серию блинов. В одном блинчике мы делаем следующие шаги: Выбираем целое число k, где 1 <= k <= arr.length. Переверните подмассив arr [0… k-1] (с индексом 0). Вход ...

Подробнее

Вопрос 120. Расставьте заданные числа так, чтобы получилось наибольшее число II Постановка задачи В задаче «Упорядочить заданные числа для образования наибольшего числа II» мы дали массив положительных целых чисел. Расставьте их так, чтобы аранжировка составляла наибольшую ценность. Формат ввода Первая и единственная строка, содержащая целое число n. Вторая строка содержит ...

Подробнее

Вопрос 121. Перемешать заданный массив Постановка задачи В задаче «Перемешать данный массив» мы дали массив целых чисел. Напишите программу, которая перемешивает данный массив. То есть он будет случайным образом перемешивать элементы в массиве. Формат ввода Первая строка содержит целое число n. Вторая строка содержит n целых чисел, разделенных пробелами. Вывод ...

Подробнее

Вопрос 122. Найдите строку с максимальным количеством единиц Постановка задачи В задаче «Найти строку с максимальным числом единиц» мы дали матрицу (1D-массив), содержащую двоичные цифры с каждой отсортированной строкой. Найдите строку, в которой максимальное количество единиц. Формат ввода Первая строка содержит два целых числа n, m. Далее n строк ...

Подробнее

Вопрос 123. Максимальный подмассив продукта II Постановка задачи В задаче «Подмассив максимального продукта II» мы задали массив, состоящий из положительных, отрицательных целых чисел, а также нулей. Нам нужно найти максимальное произведение подмассива. Формат ввода Первая строка содержит целое число N. Вторая строка содержит N целых чисел, разделенных пробелами. Формат вывода Единственный ...

Подробнее

Вопрос 124. Подпоследовательность увеличения максимальной суммы Постановка задачи В задаче «Подпоследовательность увеличения максимальной суммы» мы дали массив. Найдите сумму максимальной подпоследовательности данного массива, то есть целые числа в подпоследовательности находятся в отсортированном порядке. Подпоследовательность - это часть массива, который представляет собой последовательность, которая ...

Подробнее

Вопрос 125. Реализуйте два стека в массиве Постановка задачи В задаче «Реализовать два стека в массиве» мы должны реализовать два стека в массиве так, чтобы, если пользователь хочет вставить элемент в любой из двух стеков, не должно быть ошибки, пока массив не заполнится. . Пример Push 5 ...

Подробнее

Вопрос 126. Количество меньших элементов на правой стороне Постановка задачи В задаче «Количество меньших элементов на правой стороне» мы дали массив a []. Найдите количество меньших элементов, которые находятся справа от каждого элемента. Формат ввода Первая и единственная строка содержит целое число N. Вторая строка содержит N целых чисел, разделенных пробелами. Выход ...

Подробнее

Вопрос 127. Элементы появляются в массиве более N / K раз Постановка задачи В задаче «Элементы появляются в массиве более N / K раз» мы дали целочисленный массив размера n. Найдите элементы, которые встречаются более n / k раз. Где k - входное значение. Формат ввода Первая и единственная строка, содержащая два целых числа N и ...

Подробнее

Вопрос 128. Найдите пиковый элемент из массива Постановка задачи В задаче «Найти пиковый элемент из массива» мы дали входной массив целых чисел. Найдите пиковый элемент. В массиве элемент является пиковым элементом, если этот элемент больше, чем оба соседних элемента. Для угловых элементов мы можем рассматривать только ...

Подробнее

Вопрос 129. Найдите максимальное повторяющееся число в массиве Постановка задачи В задаче «Найти максимальное повторяющееся число в массиве» мы дали несортированный массив размера N. Данный массив содержит числа в диапазоне {0, k}, где k <= N. Найдите число, которое приближается к максимальному числу. раз в массиве. Формат ввода ...

Подробнее

Вопрос 130. Первый круговой тур по всем заправкам с бензином В первом круговом путешествии по проблеме всех бензоколонок постановка такова, что на круге есть круг с n бензонасосами. У каждого бензонасоса есть пара данных. Первое значение - это количество бензонасоса, второе - ...

Подробнее

Вопрос 131. Четыре элемента, которые суммируются с данным Постановка задачи В четырех элементах, которые суммируются для данной проблемы, мы дали массив, содержащий N элементов, которые могут быть положительными или отрицательными. Найдите набор из четырех элементов, сумма которых равна заданному значению k. Формат ввода Первая строка содержит целое число N. Вторая строка содержит массив ...

Подробнее

Вопрос 132. Проблема с разделом Постановка задачи В задаче о разбиении мы дали набор, содержащий n элементов. Выясните, можно ли разделить данный набор на два набора, сумма элементов в подмножествах которых равна. Пример Входные данные arr [] = {4, 5, 11, 9, 8, 3} Выходные данные Да Пояснение Массив ...

Подробнее

Вопрос 133. Проблема знаменитостей Постановка задачи В задаче о знаменитостях есть комната из N человек: Найдите знаменитость. Условия для знаменитостей: если A - знаменитость, тогда все остальные в комнате должны знать A. A не должен знать никого в комнате. Нам нужно найти человека, который удовлетворяет этим условиям. ...

Подробнее

Вопрос 134. Подмассив с заданной суммой Постановка задачи. В подмассиве с заданной задачей суммы мы дали массив, содержащий n положительных элементов. Мы должны найти подмассив, в котором сумма всех элементов подмассива равна given_sum. Подмассив получается из исходного массива путем удаления некоторых ...

Подробнее

Вопрос 135. Максимальный элемент в массиве, который увеличивается, а затем уменьшается Постановка задачи В данном массиве содержится n элементов. Элементы хранятся таким образом, что сначала k элементов в порядке возрастания, а затем nk элементов в порядке убывания оттуда, нам нужно найти максимальный элемент в массиве. Пример а) Входной массив: [15, 25, ...

Подробнее

Вопрос 136. Найдите потерянный элемент в повторяющемся массиве Постановка задачи. Для двух массивов A и B один массив является дубликатом другого, за исключением одного элемента. Один элемент отсутствует в A или B. нам нужно найти потерянный элемент в дублированном массиве. Пример 5 1 6 4 8 9 6 4 8 ...

Подробнее

Вопрос 137. Подмассив и подпоследовательность Постановка задачи В задаче о подмассивах и подпоследовательностях мы должны вывести все подмассивы и подпоследовательности для данного массива. Сгенерируйте все возможные непустые подмассивы. Подмассив обычно определяется как часть или раздел массива, в котором непрерывность основана на индексе. Подмассив ...

Подробнее

Вопрос 138. Объединить два отсортированных массива Постановка задачи В задаче слияния двух отсортированных массивов мы дали два отсортированных входных массива, нам нужно объединить эти два массива так, чтобы начальные числа после полной сортировки должны были быть в первом массиве и оставались во втором массиве. Пример ввода A [] = {1, 3, 5, 7, ...

Подробнее

Вопрос 139. Количество троек с суммой меньше заданного значения Постановка задачи. Мы дали массив, содержащий N элементов. В данном массиве Подсчитайте количество троек с суммой меньше заданного значения. Пример Входные данные a [] = {1, 2, 3, 4, 5, 6, 7, 8} Sum = 10 Выход 7 Возможные тройки: ...

Подробнее

Вопрос 140. Следующий большой элемент в массиве Постановка задачи. Имея массив, мы найдем следующий больший элемент каждого элемента в массиве. Если для этого элемента нет следующего большего элемента, мы напечатаем -1, иначе мы напечатаем этот элемент. Примечание: следующий больший элемент - это элемент, который больше и ...

Подробнее

Вопрос 141. Объединение двух отсортированных массивов Постановка задачи В задаче слияния двух отсортированных массивов мы дали два отсортированных массива: один с размером m + n, а другой - с размером n. Мы объединим массив размером n в массив размером m + n и напечатаем объединенный массив размером m + n. Пример ввода 6 3 M [] = ...

Подробнее

Вопрос 142. Найти элемент с помощью двоичного поиска в отсортированном массиве Постановка проблемы. Для отсортированного массива найдите элемент, используя двоичный поиск в отсортированном массиве. Если присутствует, выведите индекс этого элемента, иначе выведите -1. Пример Ввод arr [] = {1, 6, 7, 8, 9, 12, 14, 16, 26, 29, 36, 37, 156} X = 6 // элемент для поиска ...

Подробнее

Вопрос 143. Найти триплет в массиве с заданной суммой Постановка задачи. Для массива целых чисел найдите комбинацию из трех элементов в массиве, сумма которых равна заданному значению X. Здесь мы напечатаем первую полученную комбинацию. Если такой комбинации нет, выведите -1. Пример ввода N = 5, X = 15 arr [] = ...

Подробнее

Вопрос 144. Самый эффективный способ поиска дубликатов в массиве Постановка задачи. Отобразите все дублирующиеся элементы наиболее эффективным способом в пространстве O (n) и O (1). Учитывая массив размера n, который содержит числа от 0 до n-1, эти числа могут встречаться любое количество раз. Найдите дубликаты в массиве наиболее эффективным ...

Подробнее

Вопрос 145. Сортировка нулей, единиц и двоек в массиве Постановка задачи. Дан массив, содержащий N элементов, где элементы массива равны 0,1 или 2. Сортировка или разделение нулей, единиц и двоек в массиве. Расставьте все нули в первой половине, все единицы во второй половине и все двойки в третьей половине. Пример ввода 0 ...

Подробнее

Вопрос 146. Наименьшее положительное число, отсутствующее в несортированном массиве Постановка задачи В данном несортированном массиве найдите наименьшее положительное число, отсутствующее в несортированном массиве. Положительное целое число не включает 0. При необходимости мы можем изменить исходный массив. Массив может содержать положительные и отрицательные числа. Пример а. Входной массив: [3, 4, -1, 0, -2, 2, 1, ...

Подробнее

Вопрос 147. Переместить все нули в конец данного массива Постановка задачи В данном массиве переместите все нули, которые присутствуют в массиве, в конец массива. Здесь всегда есть способ вставить все нули в конец массива. Пример ввода 9 9 17 0 14 0 ...

Подробнее

Вопрос 148. Подсчитать количество вхождений в отсортированном массиве Постановка задачи В задаче «Подсчитать количество вхождений в отсортированном массиве» мы дали отсортированный массив. Подсчитайте количество вхождений или частоту в отсортированном массиве X, где X - целое число. Пример ввода 13 1 2 2 2 2 3 3 3 4 4 ...

Подробнее

Вопрос 149. Найти наименьшее отсутствующее число в отсортированном массиве Постановка задачи В задаче «Найти наименьшее отсутствующее число в отсортированном массиве» мы дали целочисленный массив. Найдите наименьшее отсутствующее число в отсортированном массиве размером N, имеющем уникальные элементы в диапазоне от 0 до M-1, где M> N. Пример ввода [0, 1, 2, 3, 4, 6, 7, ...

Подробнее

Вопрос 150. Первый повторяющийся элемент Постановка задачи. Мы дали массив, содержащий n целых чисел. Нам нужно найти первый повторяющийся элемент в данном массиве. Если повторяющегося элемента нет, то выведите «Не найдено повторяющегося целого числа». Примечание: повторяющиеся элементы - это те элементы, которые встречаются более одного раза. (Массив может содержать дубликаты) ...

Подробнее

Вопрос 151. Головоломка с массивом продуктов Постановка задачи. В задаче загадки массива товаров нам нужно построить массив, где i-й элемент будет произведением всех элементов в данном массиве, кроме элемента в i-й позиции. Пример входных данных 5 10 3 5 6 2 выходных данных 180 ...

Подробнее

Вопрос 152. Найти все пары с заданной разницей Постановка задачи. Мы дали массив, содержащий разные элементы или не содержащий повторяющихся элементов в массиве. Найдите все пары с заданной разницей. Если нет ни одной пары с заданными разными, выведите «Нет пары с заданными разными». Пример ввода 10 20 90 70 20 80 ...

Подробнее

Вопрос 153. Найти первое повторяющееся число в заданном массиве Постановка задачи. В массиве может быть несколько повторяющихся чисел, но вы должны найти первое повторяющееся число в данном массиве (встречающееся во второй раз). Пример входных данных 12 5 4 2 8 9 7 12 5 6 12 4 7 Выход 5 - первый повторяющийся элемент ...

Подробнее

Вопрос 154. Элемент большинства Постановка проблемы. Для отсортированного массива нам нужно найти элемент большинства из отсортированного массива. Элемент большинства: число, превышающее половину размера массива. Здесь мы указали число x, которое нужно проверить, является ли этот элемент мажоритарным_элементом или нет. Пример ввода 5 2 ...

Подробнее

Вопрос 155. Найдите недостающий номер Постановка задачи. При нахождении пропущенного числа из массива от 1 до N чисел мы дали массив, содержащий N-1 числа. Одно число отсутствует в массиве чисел от 1 до N. Нам нужно найти недостающее число. Формат ввода Первая строка, содержащая целое число ...

Подробнее

Строковые вопросы Microsoft

Вопрос 156. Пошаговые инструкции от узла бинарного дерева к другому решению LeetCode Постановка задачи: пошаговые инструкции от узла двоичного дерева к другому решению LeetCode. Вам дан корень двоичного дерева с n узлами. Каждому узлу однозначно присваивается значение от 1 до n. Вам также дается целое значение startValue, представляющее значение начального узла s, и другое целое значение destValue, представляющее значение пункта назначения...

Подробнее

Вопрос 157. Повернуть строку Решение LeetCode Постановка задачи Rotate String LeetCode Решение. Имея две строки s и target, вернуть true тогда и только тогда, когда s может стать target после некоторого количества сдвигов s. Сдвиг на s состоит в перемещении самого левого символа s в крайнее правое положение. Например, если s = «abcde», то будет...

Подробнее

Вопрос 158. Смещение букв Решение LeetCode Постановка задачи Shifting Letters говорит, что мы дали строку s и сдвиги массива. Теперь для каждого shift[i] = x мы хотим сдвинуть первые i + 1 буквы s, x раз. Мы должны вернуть окончательную строку после применения всех сдвигов. Пример 1: Ввод: s = "abc", сдвиги...

Подробнее

Вопрос 159. Дизайн Структура данных добавления и поиска слов LeetCode Solution Постановка задачи: разработка структуры данных для добавления и поиска слов. LeetCode Solution говорит: спроектируйте структуру данных, которая поддерживает добавление новых слов и поиск совпадений строки с какой-либо ранее добавленной строкой. Реализуйте класс WordDictionary: WordDictionary() Инициализирует объект. void addWord(word) Добавляет слово в структуру данных, оно может быть сопоставлено позже. bool search(word) Возвращает true, если есть...

Подробнее

Вопрос 160. Расшифровать строку Leetcode Solution Постановка проблемы Декодирование строки Решение LeetCode — «Декодирование строки» предлагает вам преобразовать закодированную строку в декодированную строку. Правило кодирования — k[encoded_string], где encoded_string внутри квадратных скобок повторяется ровно k раз, где k — положительное целое число. Пример: Ввод: s = "3[a]2[bc]" Вывод: "aaabcbc" ...

Подробнее

Вопрос 161. Подстрока с конкатенацией всех слов Leetcode Solution Постановка задачи Подстрока с конкатенацией всех слов Решение LeetCode – «Подстрока с конкатенацией всех слов» утверждает, что задана строка s и массив строковых слов, где каждое слово имеет одинаковую длину. Нам нужно вернуть все начальные индексы подстроки, которая...

Подробнее

Вопрос 162. Различные способы добавления скобок Решение Leetcode Постановка задачи Различные способы добавления круглых скобок Решение LeetCode — «Различные способы добавления круглых скобок» утверждает, что задано строковое выражение, состоящее из чисел и операторов. Нам нужно вернуть все возможные результаты вычислений всеми возможными способами группировки чисел и операторов. Верните ответ в любом порядке. ...

Подробнее

Вопрос 163. Генерация скобок Решение Leetcode Постановка задачи Создание скобок Решение LeetCode — «Создание скобок» утверждает, что при заданном значении n. Нам нужно сгенерировать все комбинации из n пар скобок. Верните ответ в виде вектора строк правильных скобок. Пример: Ввод: n = 3 Вывод: ["((()))","(()())","(())()","()(())","()( )()"] Объяснение: ...

Подробнее

Вопрос 164. Минимальное удаление, чтобы сделать скобки действительными Решение LeetCode Постановка задачи Минимальное удаление скобок, чтобы сделать их действительными. LeetCode Решение. Вам дана строка s, состоящая из '(', ')' и строчных английских символов. Ваша задача состоит в том, чтобы удалить минимальное количество скобок ('(' или ')', в любых позициях) так, чтобы результирующая строка скобок была...

Подробнее

Вопрос 165. Самая длинная подстрока без повторяющихся символов Решение Leetcode Постановка задачи Самая длинная подстрока без повторяющихся символов Решение LeetCode – утверждает, что задана строка s. Нам нужно найти самую длинную подстроку без повторяющихся символов. Пример: Ввод: s = "abcabcbb" Вывод: 3 Объяснение: Самая длинная подстрока без повторяющихся символов имеет длину 3. Строка: «abc». Ввод: s = "bbbb" ...

Подробнее

Вопрос 166. Решение литкода самого длинного общего префикса Постановка задачи Самый длинный общий префикс Решение LeetCode — «Самый длинный общий префикс» утверждает, что задан массив строк. Нам нужно найти самый длинный общий префикс среди этих строк. Если префикса не существует, вернуть пустую строку. Пример: Ввод: strs = ["цветок","поток","полет"] Вывод: "fl" Объяснение: "fl" - самый длинный...

Подробнее

Вопрос 167. Действительный литкод для палиндрома II Постановка задачи Действительный палиндром II Решение LeetCode. «Действительный палиндром II» утверждает, что для данной строки s нам нужно вернуть true, если s может быть строкой-палиндромом после удаления не более одного символа. Пример: Ввод: s = "aba" Вывод: true Объяснение: Входная строка уже является палиндромом, поэтому есть ...

Подробнее

Вопрос 168. Действительные скобки Решение Leetcode Постановка задачи Допустимые скобки Решение LeetCode. «Действительные скобки» означают, что вам дана строка, содержащая только символы '(', ')', '{', '}', '[' и ']'. Нам нужно определить, является ли входная строка допустимой строкой или нет. Строка считается корректной, если открытые скобки должны быть закрыты...

Подробнее

Вопрос 169. Решение с наибольшим числом литкодов Постановка задачи Самое большое число Решение LeetCode — «Наибольшее число» утверждает, что, имея список неотрицательных целых чисел, нам нужно упорядочить числа таким образом, чтобы они образовывали наибольшее число и возвращали его. Так как результат может быть очень большим, поэтому нужно вернуть...

Подробнее

Вопрос 170. Реализовать решение Leetcode Trie (дерево префиксов) Постановка задачи Решение LeetCode по внедрению Trie (дерева префиксов) — «Реализовать Trie (дерево префиксов)» предлагается реализовать структуру данных Trie, которая эффективно выполняет вставку, поиск и поиск по префиксу. Пример: Ввод: ["Trie", "insert", "search", "search", "startsWith", "insert", "search"] [[], ["apple"], ["apple"], [ "приложение"], ["приложение"], ["приложение"], ["приложение"]] Вывод: [null, null, true, false, true, null, true] Объяснение: после вставки всех строк trie выглядит как это. Ищется слово яблоко, которое...

Подробнее

Вопрос 171. Решение для разделения палиндрома Leetcode Постановка задачи Разбиение палиндрома Решение LeetCode — «Разбиение палиндрома» утверждает, что вам дана строка, разделите входную строку так, чтобы каждая подстрока раздела была палиндромом. Возвращает все возможные палиндромные разбиения входной строки. Пример: Ввод: s = "aab" Вывод: [["a","a","b"],["aa","b"]] Объяснение: существует ровно 2 допустимых...

Подробнее

Вопрос 172. Решение Leetcode для палиндромных подстрок Постановка задачи Палиндромные подстроки Решение LeetCode — «Палиндромные подстроки» просит вас найти общее количество палиндромных подстрок во входной строке. Строка является палиндромом, если она читается так же, как в прямом, так и в обратном направлении. Подстрока — это непрерывная последовательность символов в строке. Пример: Ввод: s = "aaa" Вывод: ...

Подробнее

Вопрос 173. Максимальная длина составной строки с уникальными символами Решение Leetcode Постановка задачи. Максимальная длина составной строки с уникальными символами. Решение LeetCode. «Максимальная длина составной строки с уникальными символами» говорит о том, что вам дан массив строк, и вам нужно выбрать любую подпоследовательность данного массива и соединить их. струны для формирования...

Подробнее

Вопрос 174. Решение для кратчайшего расстояния между словами Постановка задачи Кратчайшее расстояние до слова Решение LeetCode — говорит, что вам дан массив строк и два разных слова. Нам нужно вернуть кратчайшее расстояние между этими двумя словами, которые появляются во входной строке. Пример: Ввод: wordsDict = ["практика", "делает", "совершенно", "кодирование", "делает"], word1 = "кодирование", word2 = "практика" Выход: 3 Объяснение: Слово "кодирование" встречается в позиция 4. ...

Подробнее

Вопрос 175. Минимальное количество шагов для создания двухстрочных решений Leetcode для анаграммы Постановка задачи В этой задаче нам даны две строки «s» и «t», состоящие из строчных английских символов. За одну операцию мы можем выбрать любой символ в строке 't' и заменить его другим символом. Нам нужно найти минимальное количество таких операций, чтобы 't' и ...

Подробнее

Вопрос 176. Решение Leetcode изоморфных строк Постановка задачи В этой задаче нам даны две строки, a и b. Наша цель - определить, изоморфны эти две струны или нет. Две строки называются изоморфными тогда и только тогда, когда символы в первой строке могут быть заменены любым символом (включая его самого) вообще ...

Подробнее

Вопрос 177. Решение Leetcode для подпоследовательности Постановка задачи В этой задаче нам даны две разные строки. Цель состоит в том, чтобы выяснить, является ли первая строка подпоследовательностью второй. Примеры first string = "abc" second string = "mnagbcd" true first string = "burger" second string = "dominos" false Подход (рекурсивный) Это просто ...

Подробнее

Вопрос 178. Добавить двоичное решение Leetcode Постановка задачи. Имея две двоичные строки a и b, мы должны сложить эти две строки и затем вернуть результат в виде двоичной строки. Двоичная строка - это строки, содержащие только нули и единицы. Пример a = "0", b = "1" "11" a = "1", b = "100" "1010" Подход Для добавления двух ...

Подробнее

Вопрос 179. Действительное решение Palindrome Leetcode Постановка задачи Для данной строки мы должны определить, является ли она палиндромом, рассматривая только буквенно-цифровые символы, то есть только числа и алфавиты. Мы также должны игнорировать регистр букв алфавита. Пример «Человек, план, канал: Панама» верно. Пояснение: «АманапланаканалПанама» - это действительный палиндром. "гонка на машине" ...

Подробнее

Вопрос 180. Решение Leetcode от римского до целого В задаче «Из римского в целое число» нам дается строка, представляющая некоторое положительное целое число в его римской числовой форме. Римские цифры представлены 7 символами, которые можно преобразовать в целые числа с помощью следующей таблицы: Примечание. Целочисленное значение данной римской цифры не должно превышать или ...

Подробнее

Вопрос 181. Переформатируйте решение String Leetcode Постановка задачи В этой задаче нам дается буквенно-цифровая строка, т.е. строка состоит только из строчных букв (az) и цифр (0-9). От нас требуется возвращать любую перестановку этой строки, в которой нет последовательного алфавита или последовательных цифр. Если такой перестановки нет, ...

Подробнее

Вопрос 182. Решение Leetcode для умножения строк Задача «Умножение строк». Решение Leetcode просит нас умножить две строки, которые передаются нам в качестве входных данных. Мы должны распечатать или вернуть этот результат умножения вызывающей функции. Таким образом, говоря более формально, данные две строки, найдите произведение данных строк. ...

Подробнее

Вопрос 183. Решение целого числа в римский код Leetcode В этой задаче нам дается целое число, которое требуется преобразовать в римское число. Таким образом, проблема обычно обозначается как «целое число в римский», и это решение целого числа в римский код Leetcode. Если кто не знает римских цифр. В старину люди не ...

Подробнее

Вопрос 184. Групповые анаграммы Нам нужно найти групповые анаграммы данных слов. Это означает, что для каждого слова мы собираемся отсортировать его и сохранить как ключ и исходный ввод, который не отсортирован как значение, и если какой-либо другой ввод имеет то же значение, что и ...

Подробнее

Вопрос 185. Целое число в английские слова В задаче «Целое число в английские слова» мы дали неотрицательное целое число и задачи по преобразованию этого целого числа в его числовые слова, или мы получаем ввод числа, любого числа, и наша задача состоит в том, чтобы представить это число в строке. форма. Давайте посмотрим на один пример, ...

Подробнее

Вопрос 186. Сочетания букв в телефонном номере В комбинациях букв в задаче о телефонном номере мы задали строку, содержащую числа от 2 до 9. Задача состоит в том, чтобы найти все возможные комбинации, которые могут быть представлены этим числом, если каждому номеру присвоены буквы. Присвоение номера ...

Подробнее

Вопрос 187. Самая длинная подстрока без повторяющихся символов Решение LeetCode Самая длинная подстрока без повторяющихся символов Решение LeetCode. Учитывая строку, мы должны найти длину самой длинной подстроки без повторяющихся символов. Давайте рассмотрим несколько примеров: Пример pwwkew 3 Объяснение: Ответ — «wke» длины 3 aav 2 Объяснение: Ответ — «av» длины 2 Подход-1 ...

Подробнее

Вопрос 188. Перестановка палиндрома Постановка задачи Задача «Перестановка палиндрома» утверждает, что вам дана строка. Проверьте, можно ли его переставить в палиндромную цепочку. Пример superdupers yes Объяснение Данная входная строка может быть преобразована в superdrepus. Это палиндромная струна. Итак, наш ответ на этот пример - да. ...

Подробнее

Вопрос 189. Выравнивание текста Решение LeetCode Сегодня мы обсудим решение LeetCode для выравнивания текста. Постановка задачи Задача «Выравнивание текста» утверждает, что вам дан список s[ ] строкового типа размера n и целочисленного размера. Выровняйте текст таким образом, чтобы каждая строка текста состояла из заданного количества символов. Ты сможешь ...

Подробнее

Вопрос 190. Подход на основе очереди для первого неповторяющегося символа в потоке Постановка проблемы. Проблема «Подход на основе очереди для первого неповторяющегося символа в потоке» гласит, что вам предоставляется поток, содержащий символы нижнего регистра, найдите первый неповторяющийся символ всякий раз, когда новый символ добавляется в поток, и если есть не является неповторяющимся символом return -1. Примеры aabcddbe ...

Подробнее

Вопрос 191. Запросы подстроки палиндрома Постановка проблемы Задача «Запросы подстроки палиндрома» утверждает, что вам дана строка и несколько запросов. С помощью этих запросов вы должны определить, является ли сформированная подстрока из этого запроса палиндромом или нет. Пример строки str = "aaabbabbaaa" Запросы q [] = {{2, 3}, {2, 8}, {5, 7}, ...

Подробнее

Вопрос 192. Разбиение палиндрома Постановка задачи Для данной строки найдите минимальное количество необходимых разрезов, чтобы все подстроки разделов были палиндромами. Поскольку мы разрезаем нашу исходную строку на разные разделы, так что все подстроки являются палиндромами, мы называем эту проблему проблемой разделения палиндромов. Пример asaaaassss 2 Пояснение: ...

Подробнее

Вопрос 193. Обратные слова в строке Постановка задачи «Обратные слова в строке» утверждает, что вам дана строка s размера n. Выведите строку в обратном порядке, чтобы последнее слово стало первым, второе - вторым и так далее. Таким образом, мы ссылаемся на предложение, содержащее слова ...

Подробнее

Вопрос 194. Проблема с мобильной цифровой клавиатурой Постановка задачи В задаче о мобильной цифровой клавиатуре мы рассматриваем цифровую клавиатуру. Нам нужно найти все количество возможных числовых последовательностей заданной длины, чтобы вам было разрешено нажимать только кнопки, расположенные сверху, снизу, слева и справа от текущей кнопки. Тебе не разрешено ...

Подробнее

Вопрос 195. Способы декодирования В задаче Decode Ways мы дали непустую строку, содержащую только цифры, определим общее количество способов ее декодирования, используя следующее отображение: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 Пример S = «123» Количество способов декодирования этой строки равно 3 Если мы ...

Подробнее

Вопрос 196. Изменить расстояние В задаче расстояния редактирования мы должны найти минимальное количество операций, необходимых для преобразования строки X длины n в другую строку Y длины m. Разрешенные операции: Вставка Удаление Удаление Пример Подстановки Входные данные: String1 = «abcd» String2 = «abe» Выходные данные: Минимальное количество требуемых операций - 2 (...

Подробнее

Вопрос 197. Самая длинная палиндромная подпоследовательность В задаче о самой длинной палиндромной подпоследовательности мы дали строку, найдите длину самой длинной палиндромной подпоследовательности. Примеры Входные данные: TUTORIALCUP Выходные данные: 3 Входные данные: ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ Выходные данные: 7 Наивный подход к самой длинной палиндромной подпоследовательности Наивный подход к решению вышеуказанной проблемы состоит в генерации всех подпоследовательностей ...

Подробнее

Вопрос 198. KMP Алгоритм Алгоритм KMP (Knuth-Morris-Pratt) используется для поиска по шаблону в заданной строке. Нам даны строка S и шаблон p, наша цель - определить, присутствует ли данный шаблон в строке. Пример ввода: S = «aaaab» p = «aab» Вывод: истинный наивный подход ...

Подробнее

Вопрос 199. Физз Базз Название проблемы может показаться нечетким. Fizz Buzz - это игра, в которой детей учат делению. Итак, без особых хлопот давайте уберем вокруг него ажиотаж. Постановка задачи Давайте напишем программу, в которой для кратных 3 вы печатаете «Fizz», для кратных 5 «Buzz» ...

Подробнее

Вопрос 200. Литкод Fizz Buzz В задаче Fizz Buzz мы задали число n, выведите строковое представление чисел от 1 до n с заданными условиями: Выведите «Fizz» для кратных 3. Выведите «Buzz» для кратных 5. Выведите «FizzBuzz» для кратных чисел. из 3 и 5. В противном случае выведите число в ...

Подробнее

Вопрос 201. Строка декодирования Предположим, вам дана закодированная строка. Строка закодирована по какому-то шаблону, ваша задача - расшифровать строку. Скажем, <количество раз, когда встречается строка> [строка] Пример Входные данные 3 [b] 2 [bc] Выходные данные bbbcaca Объяснение Здесь «b» встречается 3 раза, а «ca» - 2 раза. ...

Подробнее

Вопрос 202. Преобразование Postfix в Infix В проблеме преобразования постфикса в инфикс мы дали выражение в постфиксной нотации. Напишите программу для преобразования данной записи в инфиксную. Инфиксная нотация В этой нотации операторы пишутся между операндами. Это похоже на то, как мы обычно пишем выражение. Например: A + ...

Подробнее

Вопрос 203. Следующая перестановка В следующей задаче о перестановке мы дали слово, найдите его лексикографически большую_перестановку. Пример ввода: str = "tutorialcup" вывод: tutorialpcu ввод: str = "nmhdgfecba" вывод: nmheabcdfg ввод: str = "алгоритмы" вывод: ввод алгоритма: str = "ложечка" вывод: следующая перестановка ...

Подробнее

Вопрос 204. Самый длинный общий префикс с использованием сортировки В задаче «Самый длинный общий префикс с использованием задачи сортировки» мы дали набор строк, найдите самый длинный общий префикс. т.е. найдите часть префикса, которая является общей для всех строк. Пример Input1: {«tutorialcup», «tutorial», «tussle», «tumbble»} Вывод: «tu» Input2: {«багаж», «банан», «игроки с битой»} Вывод: «ba» Input3: {"abcd "} Вывод:" abcd "...

Подробнее

Вопрос 205. Backspace String Сравнить В задаче сравнения строк с обратным пространством мы дали две строки S и T, проверьте, равны ли они или нет. Обратите внимание, что строки содержат "#", что означает символ возврата. Примеры Входные данные S = «ab # c» T = «ad # c» Выходные данные «истина» (поскольку и S, и T преобразуются в «ac») Входные данные ...

Подробнее

Вопрос 206. Сопоставление регулярных выражений В задаче сопоставления регулярных выражений мы дали две строки: одна (предположим, что это x) состоит только из строчных букв, а вторая (предположим, это y) состоит из строчных алфавитов с двумя специальными символами, то есть "." а также "*". Задача - выяснить, соответствует ли вторая строка ...

Подробнее

Вопрос 207. Реорганизовать строку В задаче «Реорганизация строки» мы задали строку, содержащую только некоторые символы «az». Наша задача - переставить эти символы так, чтобы не было двух одинаковых символов рядом друг с другом. Пример Входное яблоко Выходные данные pelpa Входная книга Выходные данные obko Входные данные aa Выходные данные невозможны Входные данные aaab Выходные данные not ...

Подробнее

Вопрос 208. Сжатие строк В задаче сжатия строк мы дали массив a [] типа char. Сжать его как символ и количество отдельных символов (если количество символов равно 1, то единственный символ сохраняется в сжатом массиве). Длина сжатого массива должна ...

Подробнее

Вопрос 209. Допустимые скобки Решение LeetCode В задаче допустимых скобок LeetCode мы дали строку, содержащую только символы '(', ')', '{', '}', '[' и ']', чтобы определить, действительна ли входная строка. Здесь мы предоставим вам решение LeetCode с допустимыми скобками. Входная строка действительна, если: Открытые скобки должны быть закрыты...

Подробнее

Вопрос 210. Самый длинный общий префикс с использованием Trie В задаче «Самый длинный общий префикс с использованием Trie» мы дали набор строк, найдите самый длинный общий префикс. т.е. найти часть префикса, общую для всех строк. Пример Input1: {"tutorialcup", "tutorial", "tussle", "tumbble"} Вывод: "tu" Input2: {"багаж", "банан", "игроки с битой"} Вывод: "ba" Input3: {"abcd "} Вывод:" abcd "...

Подробнее

Вопрос 211. Считай и скажи Count and Say, в котором мы дали число N, и нам нужно найти N-й член счета и сказать последовательность. Во-первых, нам нужно понять, что такое «счет» и «последовательность слов». Сначала посмотрите несколько членов последовательности: 1-й член - «1». 2 семестр ...

Подробнее

Вопрос 212. Найти уникальный символ в строке В задаче «Найти уникальный символ в строке» мы задали строку, содержащую только строчные буквы (az). Нам нужно найти в нем первый неповторяющийся символ и распечатать индекс. если такого символа не существует, выведите -1. Формат ввода Только одна строка, содержащая строку. Формат вывода Печать ...

Подробнее

Вопрос 213. Целое в римское Преобразование целых чисел в римские. Мы дали число N, и нам нужно вывести римское число N. Римские числа представлены с помощью значений {I, V, X, L, C, D, M}. Давайте посмотрим на несколько примеров для лучшего понимания. Формат ввода Только одна строка, содержащая ...

Подробнее

Вопрос 214. Выполнить сдвиг строки Leetcode Сдвиг - это процесс, в котором алфавиты увеличиваются на 1 в их значении ASCII. Для последнего алфавита z он начинается снова, т.е. сдвиг z будет равен a. При выполнении сдвига строки с проблемой leetcode у нас есть строка s (только строчные символы) и массив a [...

Подробнее

Вопрос 215. Проверьте, находятся ли строки на расстоянии K друг от друга или нет Постановка задачи Для двух строк и целого числа k напишите программу, которая проверяет, находятся ли данные строки на расстоянии k друг от друга или нет. То есть, если какой-либо символ не соответствует друг другу или какой-либо символ должен быть удален, это называется расстоянием k. Формат ввода Первый ...

Подробнее

Вопрос 216. Проверить, что длина строки равна числу, добавленному в конце Постановка задачи В задаче «Проверить, что длина строки равна последнему добавленному числу» мы задали строку, к которой наконец добавлено число. Напишите программу, которая проверяет, совпадает ли длина строки без числа с ...

Подробнее

Вопрос 217. Проверьте, все ли строки матрицы вращаются по кругу друг друга Постановка задачи В задаче «Проверить, все ли строки матрицы вращаются по кругу друг друга» мы задали символьную матрицу, напишите программу, чтобы определить, все ли строки вращаются по кругу друг друга или нет. Если все строки представляют собой круговые вращения друг друга, выведите ...

Подробнее

Вопрос 218. Сортировать строку по другой строке Постановка проблемы Даны две входные строки, шаблон и строка. Нам нужно отсортировать строку в соответствии с порядком, определенным шаблоном. Строка шаблона не имеет дубликатов и содержит все символы строки. Формат ввода Первая строка, содержащая строку s, которая нам нужна ...

Подробнее

Вопрос 219. Проверьте, соответствует ли строка порядку символов по шаблону или нет Постановка задачи В задаче «Проверить, соответствует ли строка порядку символов по шаблону или нет» мы должны проверить, следуют ли символы в данной входной строке тому же порядку, который определяется символами, присутствующими в данном шаблоне ввода, а затем вывести «Да», иначе напечатайте «Нет». Формат ввода ...

Подробнее

Вопрос 220. Обратная строка без временной переменной Постановка задачи В задаче «Обратная строка без временной переменной» мы задали строку «s». Напишите программу для переворота этой строки без использования дополнительных переменных или пробелов. Формат ввода Первая строка, содержащая заданную строку «s». Формат вывода Выведите строку, противоположную ...

Подробнее

Вопрос 221. Минимум символов, которые нужно добавить спереди, чтобы создать палиндром строки Постановка задачи В задаче «Минимум символов, добавляемых спереди для создания строкового палиндрома» мы задали строку «s». Напишите программу, чтобы найти минимальное количество символов, которые нужно добавить спереди, чтобы получился строковый палиндром. Формат ввода Первая и единственная строка, содержащая ...

Подробнее

Вопрос 222. K-й неповторяющийся символ Постановка задачи В «K-м неповторяющемся символе» мы задали строку «s». Напишите программу, чтобы узнать k-й неповторяющийся_символ. Если в строке меньше k символов, которые не повторяются, выведите «-1». Формат ввода Первая и единственная строка, содержащая строку «s». ...

Подробнее

Вопрос 223. Сгенерировать все двоичные строки из данного шаблона Постановка задачи В задаче «Сгенерировать все двоичные строки из заданного шаблона» мы дали входную строку «s», состоящую из 0, 1 и? (подстановочный знак). Нам нужно сгенерировать все возможные двоичные строки, заменив? с «0» и «1». Формат ввода Первая и единственная строка, содержащая ...

Подробнее

Вопрос 224. Самое длинное слово общего префикса по совпадению слов Постановка задачи В задаче «Самый длинный общий префикс с использованием сопоставления слов по словам» мы дали N строк. Напишите программу, чтобы найти самый длинный общий префикс заданных строк. Формат ввода Первая строка содержит целочисленное значение N, обозначающее количество строк. Следующие N строк ...

Подробнее

Вопрос 225. Самый длинный общий префикс с использованием сопоставления символов по символам Постановка задачи В задаче «Самый длинный общий префикс с использованием сопоставления символов по символам» мы дали целочисленное значение N и N строк. Напишите программу, чтобы найти самый длинный общий префикс заданных строк. Формат ввода Первая строка содержит целочисленное значение N, обозначающее число ...

Подробнее

Вопрос 226. Перестановки заданной строки с помощью STL Постановка задачи В задаче «Перестановки заданной строки с помощью STL» мы задали строку «s». Распечатайте все перестановки входной строки с помощью функций STL. Формат ввода Первая и единственная строка, содержащая строку «s». Формат вывода Вывести все перестановки заданного ...

Подробнее

Вопрос 227. Самый длинный общий префикс с использованием двоичного поиска II Постановка задачи В задаче «Самый длинный общий префикс с использованием двоичного поиска II» мы дали целочисленное значение N и N строк. Напишите программу, которая будет печатать самый длинный общий префикс заданных строк. Если общего префикса нет, выведите «-1». Формат ввода Первая строка, содержащая ...

Подробнее

Вопрос 228. Длина самой длинной действительной подстроки Постановка проблемы В поле «Длина самой длинной действительной подстроки» мы указали строку, содержащую только открывающую и закрывающую круглые скобки. Напишите программу, которая найдет самую длинную допустимую подстроку в круглых скобках. Формат ввода Первая и единственная строка, содержащая строку s. Формат вывода Первые и ...

Подробнее

Вопрос 229. Расставьте заданные числа так, чтобы получилось наибольшее число II Постановка задачи В задаче «Упорядочить заданные числа для образования наибольшего числа II» мы дали массив положительных целых чисел. Расставьте их так, чтобы аранжировка составляла наибольшую ценность. Формат ввода Первая и единственная строка, содержащая целое число n. Вторая строка содержит ...

Подробнее

Вопрос 230. Проверьте, образует ли связанный список строк палиндром Постановка задачи В задаче «Проверить, образует ли связанный список строк палиндром» мы дали связанный список, обрабатывающий строковые данные. Напишите программу, чтобы проверить, образуют ли данные палиндром или нет. Пример ba-> c-> d-> ca-> b 1 Объяснение: В приведенном выше примере мы видим, что ...

Подробнее

Вопросы по дереву Microsoft

Вопрос 231. Пошаговые инструкции от узла бинарного дерева к другому решению LeetCode Постановка задачи: пошаговые инструкции от узла двоичного дерева к другому решению LeetCode. Вам дан корень двоичного дерева с n узлами. Каждому узлу однозначно присваивается значение от 1 до n. Вам также дается целое значение startValue, представляющее значение начального узла s, и другое целое значение destValue, представляющее значение пункта назначения...

Подробнее

Вопрос 232. Обход вертикального порядка двоичного дерева Решение LeetCode Постановка задачи Обход двоичного дерева в вертикальном порядке Решение LeetCode говорит: Учитывая корень двоичного дерева, вычислите обход двоичного дерева в вертикальном порядке. Для каждого узла в позиции (строка, столбец) его левый и правый потомки будут в позициях (строка + 1, столбец - 1) и (строка + 1, столбец + 1) соответственно. ...

Подробнее

Вопрос 233. Суммирование корней и листовых чисел Решение LeetCode Постановка задачи Суммирование чисел от корня до листа Решение LeetCode говорит: Вам дан корень двоичного дерева, содержащего только цифры от 0 до 9. Каждый путь от корня к листу в дереве представляет собой число. Например, путь от корня к листу 1 -> 2 -> 3 представляет число 123. Возвращает общую сумму всех чисел от корня к листу. Тест ...

Подробнее

Вопрос 234. Решение LeetCode для обхода двоичного дерева по порядку Постановка задачи: Неупорядоченный обход двоичного дерева Решение LeetCode Учитывая корень двоичного дерева, вернуть неупорядоченный обход значений его узлов. Пример 1: Ввод: root = [1,null,2,3] Вывод: [1,3,2] Пример 2: Ввод: root = [] Вывод: [] Пример 3: Ввод: root = [1] Вывод: [1] Ограничения: количество узлов в...

Подробнее

Вопрос 235. Преобразование двоичного дерева в связанный список Решение LeetCode Свести двоичное дерево к связанному списку Решение LeetCode говорит, что — Учитывая корень двоичного дерева, сведите дерево в «связанный список»: «связанный список» должен использовать тот же класс TreeNode, где правый дочерний указатель указывает на следующий узел в списке, а левый дочерний указатель всегда нулевой. "Связанный список"...

Подробнее

Вопрос 236. Диаметр N-арного дерева Решение LeetCode Постановка задачи: диаметр N-арного дерева Решение LeetCode. Имея корень N-арного дерева, вам нужно вычислить длину диаметра дерева. Диаметр N-арного дерева — это длина самого длинного пути между любыми двумя узлами дерева. Этот путь может быть, а может и нет...

Подробнее

Вопрос 237. Наименьший общий предок решения Leetcode для двоичного дерева Постановка задачи Наименьший общий предок двоичного дерева Решение LeetCode — «Наименьший общий предок двоичного дерева» утверждает, что заданы корень двоичного дерева и два узла дерева. Нам нужно найти наименьшего общего предка этих двух узлов. Самый низкий общий...

Подробнее

Вопрос 238. Заполнение следующих правильных указателей в каждом узле Решение Leetcode Постановка задачи Заполнение следующих правых указателей в каждом узле Решение LeetCode — «Заполнение следующих правых указателей в каждом узле» утверждает, что задан корень идеального двоичного дерева, и нам нужно заполнить каждый следующий указатель узла его следующим правым узлом. Если рядом нет...

Подробнее

Вопрос 239. Удалить узлы и вернуть решение Forest Leetcode Постановка задачи Решение LeetCode «Удалить узлы и вернуть лес» — «Удалить узлы и вернуть лес» утверждает, что задан корень двоичного дерева, где каждый узел имеет отдельное значение. Нам также дан массив to_delete, где нам нужно удалить все узлы со значениями, содержащимися в...

Подробнее

Вопрос 240. Решение для восстановления двоичного дерева поиска Leetcode Постановка задачи Восстановление двоичного дерева поиска Решение LeetCode — «Восстановление двоичного дерева поиска» утверждает, что задан корень двоичного дерева поиска, где значения ровно двух узлов поменяны местами по ошибке. Нам нужно восстановить дерево без изменения его структуры. Пример: Ввод: root = [1,3,null,null,2] Вывод: [3,1,null,null,2] ...

Подробнее

Вопрос 241. Решение для симметричного дерева Постановка задачи Симметричное дерево Решение LeetCode — «Симметричное дерево» утверждает, что задан корень бинарного дерева, и нам нужно проверить, является ли данное бинарное дерево зеркалом самого себя (симметричным относительно своего центра) или нет? Если да, нам нужно вернуть true, иначе false. Пример: ...

Подробнее

Вопрос 242. Путь от корня к листу с целевой суммой Решения Leetcode Даны двоичное дерево и целое число K. Наша цель - выяснить, существует ли в дереве путь от корня к листу, сумма которого равна целевому K. Сумма пути - это сумма всех узлов, лежащих на нем. 2 / \ ...

Подробнее

Вопрос 243. Запросы количества отдельных элементов в подмассиве Мы дали массив целых чисел и несколько запросов, и нам нужно узнать количество всех отдельных элементов, которые у нас есть в данном диапазоне, запрос состоит из двух чисел слева и справа, это заданный диапазон, с этим учитывая диапазон мы ...

Подробнее

Вопрос 244. Моррис Траверсал Обход Морриса - это метод обхода узлов в двоичном дереве без использования стека и рекурсии. Таким образом уменьшая сложность пространства до линейной. Пример обхода порядка 9 7 1 6 4 5 3 1 / \ 2 ...

Подробнее

Вопрос 245. Построить двоичное дерево из заданного представления родительского массива Задача «Построить двоичное дерево из заданного представления родительского массива» утверждает, что вам дан массив. Этот входной массив представляет собой двоичное дерево. Теперь вам нужно построить двоичное дерево на основе этого входного массива. В массиве хранится индекс родительского узла по каждому индексу. ...

Подробнее

Вопрос 246. Учитывая двоичное дерево, как удалить все полуузлы? Задача: «Учитывая двоичное дерево, как удалить все половинки узлов?» заявляет, что вам дано двоичное дерево. Теперь вам нужно удалить полуузлы. Половина узла определяется как узел в дереве, у которого есть только один дочерний элемент. Либо это ...

Подробнее

Вопрос 247. Итеративный обход предзаказов Задача «Итеративный обход перед порядком» гласит, что вам дано двоичное дерево, и теперь вам нужно найти обход дерева перед порядком. От нас требуется найти обход перед порядком, используя итерационный метод, а не рекурсивный подход. Пример 5 7 9 6 1 4 3 ...

Подробнее

Вопрос 248. Напишите код для определения идентичности двух деревьев Задача «Написать код для определения идентичности двух деревьев» утверждает, что вам даны два двоичных дерева. узнать, идентичны они или нет? Здесь идентичное дерево означает, что оба двоичных дерева имеют одинаковое значение узла с одинаковым расположением узлов. Пример Оба дерева ...

Подробнее

Вопрос 249. Граничный обход бинарного дерева Постановка задачи Задача «Обход границы двоичного дерева» утверждает, что вам дано двоичное дерево. Теперь вам нужно распечатать границу двоичного дерева. Здесь обход границы означает, что все узлы показаны как граница дерева. Узлы видны из ...

Подробнее

Вопрос 250. Клонировать двоичное дерево со случайными указателями Постановка задачи. Вам дано полное двоичное дерево с некоторыми случайными указателями. Случайные указатели относятся к узлам, на которые указывает каждый узел, кроме его левого и правого дочерних элементов. Таким образом, это также меняет стандартную структуру узла в простом двоичном дереве. Теперь узел ...

Подробнее

Вопрос 251. Обход порядка уровней с использованием двух очередей Постановка задачи. В задаче «Обход порядка уровней с использованием двух очередей» указано, что вам дано двоичное дерево, вывести его построчно для обхода порядка уровней. Примеры Входные данные 5 11 42 7 9 8 12 23 52 3 Входные данные 1 2 3 4 5 6 Алгоритм обхода порядка уровней ...

Подробнее

Вопрос 252. Преобразование BST в Min-Heap без использования массива Постановка задачи «Преобразование BST в минимальную кучу без использования массива» заключается в том, что вам дано BST (двоичное дерево поиска), и вам необходимо преобразовать его в минимальную кучу. Мин-куча должна содержать все элементы двоичного дерева поиска. Алгоритм должен работать с линейной временной сложностью. ...

Подробнее

Вопрос 253. Объединить два BST с ограниченным дополнительным пространством Постановка проблемы. В задаче «Объединить два BST с ограниченным дополнительным пространством» указано, что вам дано два двоичных дерева поиска (BST), и вам необходимо распечатать элементы из обоих деревьев в отсортированном порядке. Это в таком порядке, что кажется, что элементы взяты из одного BST. ...

Подробнее

Вопрос 254. Преобразование двоичного дерева в двоичное дерево поиска с использованием набора STL Постановка задачи. Нам дано двоичное дерево, и нам нужно преобразовать его в двоичное дерево поиска. Задача «Преобразование двоичного дерева в двоичное дерево поиска с использованием набора STL» требует выполнить преобразование с использованием набора STL. Мы уже обсуждали преобразование двоичного дерева в BST, но мы ...

Подробнее

Вопрос 255. K'th Самый большой элемент в BST, использующий постоянное дополнительное пространство Постановка задачи «K-й самый большой элемент в BST с использованием постоянного дополнительного пространства» утверждает, что вам дано двоичное дерево поиска и вам нужно найти в нем k-й самый большой элемент. Итак, если мы расположим элементы двоичного дерева поиска в порядке убывания, нам нужно вернуть ...

Подробнее

Вопрос 256. Вертикальная сумма в заданном двоичном дереве Постановка задачи Задача «Вертикальная сумма в заданном двоичном дереве» утверждает, что вам дано двоичное дерево, и нам нужно найти сумму для каждого вертикального уровня. Под вертикальным уровнем мы понимаем, если мы проведем вертикальные линии на расстоянии 1 единицы слева и справа ...

Подробнее

Вопрос 257. Программа для проверки, является ли двоичное дерево BST или нет Постановка задачи «Программа для проверки, является ли двоичное дерево BST или нет» утверждает, что вам дано двоичное дерево, и вам необходимо проверить, удовлетворяет ли двоичное дерево свойствам двоичного дерева поиска. Итак, двоичное дерево имеет следующие свойства: Левое поддерево ...

Подробнее

Вопрос 258. Слияние двух сбалансированных двоичных деревьев поиска Постановка задачи Для двух сбалансированных двоичных деревьев поиска n элементов в первом BST и m элементов во втором BST. Напишите алгоритм для объединения двух сбалансированных двоичных деревьев поиска для формирования третьего сбалансированного двоичного дерева поиска с (n + m) элементами. Пример предварительного заказа ввода вывода ...

Подробнее

Вопрос 259. Поиск и вставка в дерево двоичного поиска Постановка проблемы Напишите алгоритм для выполнения поиска и вставки в дерево двоичного поиска. Итак, что мы собираемся сделать, это вставить некоторые элементы из входных данных в двоичное дерево поиска. Всякий раз, когда вас просят найти определенный элемент, мы будем искать его среди элементов в BST (коротко ...

Подробнее

Вопрос 260. Проверьте, что данный массив размера n может представлять BST из n уровней или нет Постановка задачи. Для массива с n элементами проверьте, что данный массив размера n может представлять BST n уровней или нет. То есть проверить, может ли двоичное дерево поиска, построенное с использованием этих n элементов, представлять BST n уровней. Примеры arr [] = {10, 8, 6, 9, ...

Подробнее

Вопрос 261. Преобразование двоичного дерева в двоичное дерево поиска В задаче преобразования двоичного дерева в двоичное дерево поиска мы дали двоичное дерево преобразовать его в двоичное дерево поиска без изменения структуры дерева. Пример предзаказа ввода вывода: 13 8 6 47 25 51 Алгоритм Нам не нужно изменять структуру ...

Подробнее

Вопрос 262. Сортированный массив в сбалансированный BST В отсортированном массиве для сбалансированной задачи BST мы предоставили массив в отсортированном порядке, построим сбалансированное двоичное дерево поиска из отсортированного массива. Примеры Входной arr [] = {1, 2, 3, 4, 5} Выходной предварительный заказ: 3 2 1 5 4 Входной arr [] = {7, 11, 13, 20, 22, ...

Подробнее

Вопрос 263. Построить BST из заданного обхода порядка уровней Учитывая обход порядка уровней в дереве двоичного поиска, напишите алгоритм для построения дерева двоичного поиска или BST из ITS при данном обходе порядка уровней. Пример Input levelOrder [] = {18, 12, 20, 8, 15, 25, 5, 9, 22, 31} Порядок вывода: 5 8 9 12 15 18 ...

Подробнее

Вопрос 264. BST в дерево с суммой всех меньших ключей В этой задаче мы дали двоичное дерево поиска, напишите алгоритм для преобразования наилучшего в дерево с суммой всех меньших ключей. Пример предварительного заказа ввода-вывода: 19 7 1 54 34 88 Наивный подход Обходите все узлы один за другим в любой форме обхода и ...

Подробнее

Вопрос 265. Найдите узел с минимальным значением в дереве двоичного поиска Учитывая дерево двоичного поиска, напишите алгоритм, чтобы найти узел с минимальным значением в данном дереве двоичного поиска. Пример ввода-вывода 5 Наивный подход Простой подход - выполнить обход дерева и найти узел с минимальным значением среди всех узлов. Этот ...

Подробнее

Вопрос 266. Построить двоичное дерево из заданных обходов в порядке и в порядке следования В этой задаче у нас есть порядок и предварительный порядок двоичного дерева. Нам нужно построить двоичное дерево из заданных обходов Inorder и Preorder. Пример ввода: Inorder = [D, B, E, A, F, C] Preorder = [A, B, D, E, C, F] Вывод: предварительный обход дерева, образованного ...

Подробнее

Вопрос 267. Обратить путь в BST с помощью очереди В обратном пути в BST с использованием задачи очереди, мы дали двоичное дерево поиска и узел, напишите алгоритм для обратного пути от корня к заданному узлу. Предположим, что узел существует в BST. Пример входного целевого узла = 12 Выходной обход по порядку до ...

Подробнее

Вопрос 268. Обход порядка уровней в спиральной форме В этой задаче мы дали двоичное дерево, распечатайте его обход порядка уровней в виде спирали. Примеры Входные данные 10 30 20 40 50 80 70 60 Наивный подход к обходу порядка уровней в спиральной форме Идея состоит в том, чтобы выполнить обычный обход порядка уровней с помощью ...

Подробнее

Вопрос 269. Сбалансированное двоичное дерево В задаче сбалансированного двоичного дерева мы дали корень двоичного дерева. Мы должны определить, является ли это балансом высоты. Примеры Вход Выход true Вход Выход: false Сбалансированное двоичное дерево Каждый узел сбалансированного двоичного дерева имеет разницу в 1 или меньше ...

Подробнее

Вопрос 270. Самый низкий общий предок Учитывая корень двоичного дерева и два узла n1 и n2, найдите LCA (наименьшего общего предка) узлов. Пример Что такое наименьший общий предок (LCA)? Предки узла n - это узлы, присутствующие на пути между корнем и узлом. Рассмотрим двоичное дерево, показанное в ...

Подробнее

Вопрос 271. Сегментное дерево Если мы выполняем добавление в заданном диапазоне массива, значения элементов которого обновляются в любое время. Затем в этом типе проблемы мы решаем, используя структуру дерева сегментов. Учитывая массив a [] с n элементами, и вам нужно ответить на несколько запросов, каждый из запросов является одним ...

Подробнее

Вопрос 272. Двоичное дерево поиска Бинарное дерево поиска - это бинарное дерево с некоторыми правилами, которые позволяют нам хранить данные в отсортированном виде. Поскольку это двоичное дерево, узел может иметь не более 2 дочерних элементов. Структура узла дерева двоичного поиска Правила для двоичного дерева ...

Подробнее

Вопрос 273. Максимальное двоичное дерево В этой задаче мы дали массив a [] размера n. Создайте максимальное двоичное дерево из массива и верните его корневой узел. Он создается из массива с помощью следующих шагов: Корневой узел дерева должен быть максимальным значением в заданном ...

Подробнее

Вопрос 274. Обход зигзагообразного уровня двоичного дерева Для двоичного дерева выведите зигзагообразный обход значений его узлов. (то есть слева направо, затем справа налево для следующего уровня и чередования). В качестве примера рассмотрим двоичное дерево, приведенное ниже. Ниже приведен обход зигзагообразного уровня вышеупомянутых типов двоичного дерева.

Подробнее

Вопрос 275. Восстановить двоичное дерево поиска Рассмотрим двоичное дерево поиска, два узла дерева поменялись местами, разработайте алгоритм для восстановления двоичного дерева поиска. Пример. Рассмотрим приведенное ниже двоичное дерево поиска, два узла которого поменялись местами в качестве входных данных. Некорректные узлы на BST обнаруживаются (выделены) и затем меняются местами для получения ...

Подробнее

Вопрос 276. Заполнение указателей «следующий правый» в каждом узле Учитывая двоичное дерево, соедините узлы, находящиеся на одном уровне, слева направо. Структура узла дерева: узел дерева содержит 4 компонента, которые представляют собой данные (целочисленное значение), указатели (следующий, левый и правый) типа узла дерева. следующий указатель узла указывает на его ...

Подробнее

Вопрос 277. Уровень каждого узла в дереве из исходного узла Дано дерево (ациклический полносвязный граф, в котором составляющие узлы соединены двунаправленными ребрами) и исходный узел. найти уровень каждого узла в исходном узле древовидной формы. Принято, что уровень узла v по отношению к источнику - это расстояние между ...

Подробнее

Вопрос 278. Самый длинный общий префикс с использованием Trie В задаче «Самый длинный общий префикс с использованием Trie» мы дали набор строк, найдите самый длинный общий префикс. т.е. найти часть префикса, общую для всех строк. Пример Input1: {"tutorialcup", "tutorial", "tussle", "tumbble"} Вывод: "tu" Input2: {"багаж", "банан", "игроки с битой"} Вывод: "ba" Input3: {"abcd "} Вывод:" abcd "...

Подробнее

Вопрос 279. Проверить дерево двоичного поиска Проблема В задаче «Проверить дерево двоичного поиска» мы указали корень дерева, мы должны проверить, является ли это деревом двоичного поиска или нет. Пример: Выход: true Объяснение: Данное дерево является двоичным деревом поиска, потому что все элементы, оставленные для каждого поддерева ...

Подробнее

Вопрос 280. Сумма пути Что такое проблема суммы пути? В задаче Path Sum мы дали двоичное дерево и целое число SUM. Мы должны выяснить, имеет ли какой-либо путь от корня до листа сумма, равная СУММ. Сумма пути определяется как сумма всех узлов ...

Подробнее

Вопрос 281. Обход двоичного дерева с порядком уровней Уровень обхода данного двоичного дерева такой же, как BFS двоичного дерева. Знаем ли мы, что такое BFS на самом деле? Если нет, то не расстраивайтесь, просто прочтите всю статью и посетите наши предыдущие статьи для лучшего понимания. BFS - это ...

Подробнее

Вопрос 282. Удаление в двоичном дереве Знаем ли мы, что на самом деле представляет собой двоичное дерево? Теперь в этом посте мы сосредоточимся на том, как удалить узел, значение которого задано. Мы уверены, что значение узла, который мы хотим удалить, всегда присутствует перед удалением в BT. В двоичном ...

Подробнее

Вопросы по Microsoft Graph

Вопрос 283. Найдите наименьшую двоичную цифру, кратную заданному числу Постановка задачи Задача «Найти наименьшее кратное двоичному числу данного числа» состоит в том, что вам дано десятичное число N. Итак, найдите наименьшее кратное N, которое содержит только двоичные цифры «0» и «1». Пример 37 111 Подробное объяснение можно найти ниже в разделе ...

Подробнее

Вопрос 284. Транспонировать график Постановка задачи Задача «Транспонировать граф» утверждает, что вам дан граф, и вам нужно найти транспонирование данного графа. Транспонирование: транспонирование ориентированного графа создает другой граф с такими же конфигурациями ребер и узлов, но направление всех ребер было изменено на противоположное. Пример ...

Подробнее

Вопрос 285. BFS для отключенного графа Постановка задачи В задаче «BFS для отключенного графа» указано, что вам дан отсоединенный ориентированный граф, распечатайте обход этого графа BFS. Пример Обход BFS по приведенному выше графику дает: 0 1 2 5 3 4 6 Подход Обход в ширину при первом поиске (BFS) для отсоединенного направленного графа ...

Подробнее

Вопрос 286. Оценить дивизион При оценке задачи деления мы дали некоторые уравнения в форме A / B = k, где A и B - строки, а k - действительное число. Ответьте на несколько запросов, если ответа не существует, верните -1. Пример ввода: уравнения: a / b = 2.0 и b / c = 3.0 запросы: a / c ...

Подробнее

Вопрос 287. Клонирование графа Что такое клонирование графа? Сегодня у нас есть ссылка на неориентированный граф. Что мы должны сделать? Возврат полной копии предоставленного графика. Давайте посмотрим на структуру: Узел класса: он состоит из значения данных и соседей, связанных с каждым ...

Подробнее

Вопрос 288. Топологическая сортировка Для данного ориентированного ациклического графа топологически отсортируйте узлы графа. Пример топологической сортировки Топологическая сортировка приведенного выше графа -> {1,2,3,0,5,4} Теория Топологическая сортировка выполняется для ориентированного ациклического графа (DAG). В DAG нет циклов. т.е. такого пути не существует, начиная с любого узла ...

Подробнее

Вопросы по стеку Microsoft

Вопрос 289. Решение LeetCode для обхода двоичного дерева по порядку Постановка задачи: Неупорядоченный обход двоичного дерева Решение LeetCode Учитывая корень двоичного дерева, вернуть неупорядоченный обход значений его узлов. Пример 1: Ввод: root = [1,null,2,3] Вывод: [1,3,2] Пример 2: Ввод: root = [] Вывод: [] Пример 3: Ввод: root = [1] Вывод: [1] Ограничения: количество узлов в...

Подробнее

Вопрос 290. Расшифровать строку Leetcode Solution Постановка проблемы Декодирование строки Решение LeetCode — «Декодирование строки» предлагает вам преобразовать закодированную строку в декодированную строку. Правило кодирования — k[encoded_string], где encoded_string внутри квадратных скобок повторяется ровно k раз, где k — положительное целое число. Пример: Ввод: s = "3[a]2[bc]" Вывод: "aaabcbc" ...

Подробнее

Вопрос 291. Преобразование двоичного дерева в связанный список Решение LeetCode Свести двоичное дерево к связанному списку Решение LeetCode говорит, что — Учитывая корень двоичного дерева, сведите дерево в «связанный список»: «связанный список» должен использовать тот же класс TreeNode, где правый дочерний указатель указывает на следующий узел в списке, а левый дочерний указатель всегда нулевой. "Связанный список"...

Подробнее

Вопрос 292. Добавить решение для двух чисел II Leetcode Постановка задачи Решение LeetCode «Добавить два числа II» — «Добавить два числа II» утверждает, что два непустых связанных списка представляют два неотрицательных целых числа, в которых старшая значащая цифра идет первой, а каждый узел содержит ровно одну цифру. Нам нужно сложить два числа и вернуть сумму как...

Подробнее

Вопрос 293. Ежедневная температура Решение Leetcode Постановка задачи Ежедневные температуры Решение Leetcode: утверждает, что задан массив целых чисел температуры, представляющих дневные температуры, верните ответ в виде массива, такой что answer[i] - это количество дней, которые вам нужно ждать после i-го дня, чтобы получить более теплую температуру. Если нет будущего дня, для которого это возможно, вместо этого оставьте answer[i] == 0. ...

Подробнее

Вопрос 294. Минимальное удаление, чтобы сделать скобки действительными Решение LeetCode Постановка задачи Минимальное удаление скобок, чтобы сделать их действительными. LeetCode Решение. Вам дана строка s, состоящая из '(', ')' и строчных английских символов. Ваша задача состоит в том, чтобы удалить минимальное количество скобок ('(' или ')', в любых позициях) так, чтобы результирующая строка скобок была...

Подробнее

Вопрос 295. Решение для улавливания дождевой воды Постановка задачи Решение LeetCode для захвата дождевой воды – «Захват дождевой воды» утверждает, что задан массив высот, который представляет собой карту высот, где ширина каждого столбца равна 1. Нам нужно найти количество воды, попавшей в ловушку после дождя. Пример: Ввод: высота = [0,1,0,2,1,0,1,3,2,1,2,1] Вывод: 6 Объяснение: Проверить...

Подробнее

Вопрос 296. Действительные скобки Решение Leetcode Постановка задачи Допустимые скобки Решение LeetCode. «Действительные скобки» означают, что вам дана строка, содержащая только символы '(', ')', '{', '}', '[' и ']'. Нам нужно определить, является ли входная строка допустимой строкой или нет. Строка считается корректной, если открытые скобки должны быть закрыты...

Подробнее

Вопрос 297. Решение с максимальным частотным стеком Постановка задачи Стек максимальной частоты Решение LeetCode — «Максимальный стек частоты» просит вас спроектировать стек частот, в котором всякий раз, когда мы извлекаем элемент из стека, он должен возвращать наиболее часто встречающийся элемент, присутствующий в стеке. Реализуйте класс FreqStack: FreqStack() создает пустой стек частот. void push(int val) толкает ...

Подробнее

Вопрос 298. Проектирование стека с операцией приращения Решение Leetcode Постановка задачи Проектирование стека с операцией приращения Решение Leetcode — утверждает, что нам необходимо спроектировать стек, который эффективно поддерживает следующие операции. Назначьте максимальную емкость стека. Эффективно выполнять операцию push, если размер стека строго меньше максимальной емкости ...

Подробнее

Вопрос 299. Решение Leetcode с минимальным стеком Постановка проблемы Создайте стек, который поддерживает push, pop, top и получение минимального элемента за постоянное время. push (x) - помещает элемент x в стек. pop () - удаляет элемент сверху стека. top () - получить верхний элемент. getMin () - получает минимальный элемент в стеке. ...

Подробнее

Вопрос 300. Создайте стек, который поддерживает getMin () за время O (1) и дополнительное пространство за O (1) Создайте стек, который поддерживает getMin () за время O (1) и дополнительное пространство за O (1). Таким образом, специальная структура данных стека должна поддерживать все операции стека, такие как - void push () int pop () bool isFull () bool isEmpty () в постоянное время. Добавьте дополнительную операцию getMin () для возврата минимального значения ...

Подробнее

Вопрос 301. Реализуйте стек с использованием единой очереди Постановка проблемы Задача «Реализовать стек с использованием единой очереди» требует от нас реализовать структуру данных стека (LIFO) с использованием структуры данных очереди (FIFO). Здесь LIFO означает «последний пришел - первым ушел», а FIFO - «первым пришел - первым ушел». Пример push (10) push (20) top () pop () push (30) pop () top () Top: 20 ...

Подробнее

Вопрос 302. Обход порядка уровней в спиральной форме В этой задаче мы дали двоичное дерево, распечатайте его обход порядка уровней в виде спирали. Примеры Входные данные 10 30 20 40 50 80 70 60 Наивный подход к обходу порядка уровней в спиральной форме Идея состоит в том, чтобы выполнить обычный обход порядка уровней с помощью ...

Подробнее

Вопрос 303. Мин. Стек В задаче минимального стека мы должны разработать стек для эффективной реализации следующих функций: push (x) -> Вставить элемент x в стек pop () -> Удаляет элемент поверх стека top () -> Вернуть элемент вверху стека getMin () -> Вернуть минимальный присутствующий элемент ...

Подробнее

Вопрос 304. Очередь с использованием стеков В очереди с использованием задачи стека мы должны реализовать следующие функции очереди, используя стандартные функции структуры данных стека, Enqueue: добавить элемент в конец очереди Dequeue: удалить элемент из начала очереди Пример ввода : Поставить в очередь (5) Поставить в очередь (11) Поставить в очередь (39) Убрать из очереди () ...

Подробнее

Вопрос 305. Следующий элемент большей частоты В следующей задаче с более частым элементом мы дали массив a [] размера n, содержащий числа. Для каждого числа в массиве print число справа в массиве с частотой, большей, чем у текущего числа. Пример ввода a [] = {1, 1, ...

Подробнее

Вопрос 306. Решение LeetCode для улавливания дождевой воды В задаче LeetCode «Улавливание дождевой воды» мы задали N неотрицательных целых чисел, представляющих карту высот, а ширина каждой полосы равна 1. Мы должны найти количество воды, которое может быть захвачено в приведенной выше структуре. Пример Давайте разберемся, что на примере Для ...

Подробнее

Вопрос 307. Строка декодирования Предположим, вам дана закодированная строка. Строка закодирована по какому-то шаблону, ваша задача - расшифровать строку. Скажем, <количество раз, когда встречается строка> [строка] Пример Входные данные 3 [b] 2 [bc] Выходные данные bbbcaca Объяснение Здесь «b» встречается 3 раза, а «ca» - 2 раза. ...

Подробнее

Вопрос 308. Преобразование Postfix в Infix В проблеме преобразования постфикса в инфикс мы дали выражение в постфиксной нотации. Напишите программу для преобразования данной записи в инфиксную. Инфиксная нотация В этой нотации операторы пишутся между операндами. Это похоже на то, как мы обычно пишем выражение. Например: A + ...

Подробнее

Вопрос 309. Обход зигзагообразного уровня двоичного дерева Для двоичного дерева выведите зигзагообразный обход значений его узлов. (то есть слева направо, затем справа налево для следующего уровня и чередования). В качестве примера рассмотрим двоичное дерево, приведенное ниже. Ниже приведен обход зигзагообразного уровня вышеупомянутых типов двоичного дерева.

Подробнее

Вопрос 310. Backspace String Сравнить В задаче сравнения строк с обратным пространством мы дали две строки S и T, проверьте, равны ли они или нет. Обратите внимание, что строки содержат "#", что означает символ возврата. Примеры Входные данные S = «ab # c» T = «ad # c» Выходные данные «истина» (поскольку и S, и T преобразуются в «ac») Входные данные ...

Подробнее

Вопрос 311. Реализуйте два стека в массиве Постановка задачи В задаче «Реализовать два стека в массиве» мы должны реализовать два стека в массиве так, чтобы, если пользователь хочет вставить элемент в любой из двух стеков, не должно быть ошибки, пока массив не заполнится. . Пример Push 5 ...

Подробнее

Вопрос 312. Проблема знаменитостей Постановка задачи В задаче о знаменитостях есть комната из N человек: Найдите знаменитость. Условия для знаменитостей: если A - знаменитость, тогда все остальные в комнате должны знать A. A не должен знать никого в комнате. Нам нужно найти человека, который удовлетворяет этим условиям. ...

Подробнее

Вопрос 313. Следующий большой элемент в массиве Постановка задачи. Имея массив, мы найдем следующий больший элемент каждого элемента в массиве. Если для этого элемента нет следующего большего элемента, мы напечатаем -1, иначе мы напечатаем этот элемент. Примечание: следующий больший элемент - это элемент, который больше и ...

Подробнее

Вопросы очереди Майкрософт

Вопрос 314. Скользящее среднее из потока данных Решение Leetcode Постановка задачи Скользящее среднее из потока данных Решение LeetCode — «Скользящее среднее из потока данных» утверждает, что задан поток целых чисел и размер окна k. Нам нужно вычислить скользящее среднее всех целых чисел в скользящем окне. Если количество элементов в...

Подробнее

Вопрос 315. Обход порядка уровней с использованием двух очередей Постановка задачи. В задаче «Обход порядка уровней с использованием двух очередей» указано, что вам дано двоичное дерево, вывести его построчно для обхода порядка уровней. Примеры Входные данные 5 11 42 7 9 8 12 23 52 3 Входные данные 1 2 3 4 5 6 Алгоритм обхода порядка уровней ...

Подробнее

Вопрос 316. Реализуйте стек с использованием единой очереди Постановка проблемы Задача «Реализовать стек с использованием единой очереди» требует от нас реализовать структуру данных стека (LIFO) с использованием структуры данных очереди (FIFO). Здесь LIFO означает «последний пришел - первым ушел», а FIFO - «первым пришел - первым ушел». Пример push (10) push (20) top () pop () push (30) pop () top () Top: 20 ...

Подробнее

Вопрос 317. Найдите первый круговой тур, который посещает все бензиновые насосы Постановка проблемы В задаче «Найти первый круговой тур, который посещает все бензонасосы», указано, что на круговой дороге N бензонасосов. Учитывая количество бензина, которое есть в каждом бензонасосе, и количество бензина, необходимое для преодоления расстояния между двумя бензонасосами. Так что вы ...

Подробнее

Вопрос 318. Подход на основе очереди для первого неповторяющегося символа в потоке Постановка проблемы. Проблема «Подход на основе очереди для первого неповторяющегося символа в потоке» гласит, что вам предоставляется поток, содержащий символы нижнего регистра, найдите первый неповторяющийся символ всякий раз, когда новый символ добавляется в поток, и если есть не является неповторяющимся символом return -1. Примеры aabcddbe ...

Подробнее

Вопрос 319. Реализация Deque с использованием кругового массива Постановка задачи «Реализация Deque с использованием кругового массива» требует реализовать следующие функции Deque (дважды завершенной очереди) с использованием кругового массива insertFront (x): вставить элемент x перед Deque insertRear (x): вставить элемент x позади Deque deleteFront (): удалить элемент из ...

Подробнее

Вопрос 320. Найдите узел с минимальным значением в дереве двоичного поиска Учитывая дерево двоичного поиска, напишите алгоритм, чтобы найти узел с минимальным значением в данном дереве двоичного поиска. Пример ввода-вывода 5 Наивный подход Простой подход - выполнить обход дерева и найти узел с минимальным значением среди всех узлов. Этот ...

Подробнее

Вопрос 321. Обратить путь в BST с помощью очереди В обратном пути в BST с использованием задачи очереди, мы дали двоичное дерево поиска и узел, напишите алгоритм для обратного пути от корня к заданному узлу. Предположим, что узел существует в BST. Пример входного целевого узла = 12 Выходной обход по порядку до ...

Подробнее

Вопрос 322. Очередь с использованием стеков В очереди с использованием задачи стека мы должны реализовать следующие функции очереди, используя стандартные функции структуры данных стека, Enqueue: добавить элемент в конец очереди Dequeue: удалить элемент из начала очереди Пример ввода : Поставить в очередь (5) Поставить в очередь (11) Поставить в очередь (39) Убрать из очереди () ...

Подробнее

Вопрос 323. Приоритетная очередь в C ++ Для реализации очереди используется способ FIFO. В очереди вставки выполняются на одном конце (сзади), а удаление - на другом конце (спереди). Как правило, первым удаляется элемент, который входит первым. Мы реализуем приоритетную очередь с использованием встроенных функций C ++. Характеристики очереди с приоритетом Очередь с приоритетом ...

Подробнее

Вопрос 324. Приоритетная очередь Очередь с приоритетом - это тип структуры данных, который похож на обычную очередь, но имеет приоритет, связанный с каждым ее элементом. Чем выше приоритет, тем раньше будет обслужен элемент. В некоторых случаях есть два элемента с одинаковым приоритетом, тогда элемент поставлен в очередь ...

Подробнее

Вопрос 325. Обход зигзагообразного уровня двоичного дерева Для двоичного дерева выведите зигзагообразный обход значений его узлов. (то есть слева направо, затем справа налево для следующего уровня и чередования). В качестве примера рассмотрим двоичное дерево, приведенное ниже. Ниже приведен обход зигзагообразного уровня вышеупомянутых типов двоичного дерева.

Подробнее

Вопрос 326. Обход двоичного дерева с порядком уровней Уровень обхода данного двоичного дерева такой же, как BFS двоичного дерева. Знаем ли мы, что такое BFS на самом деле? Если нет, то не расстраивайтесь, просто прочтите всю статью и посетите наши предыдущие статьи для лучшего понимания. BFS - это ...

Подробнее

Вопросы по матрице Microsoft

Вопрос 327. Лучшее решение LeetCode для места встречи Постановка задачи: Лучшее место встречи Решение Leetcode гласит: Дана сетка бинарной сетки amxn, где каждая единица отмечает дом одного друга, вернуть минимальное общее расстояние пути. Общее расстояние пути равно сумме расстояний между домами друзей и местом встречи. Расстояние рассчитывается с помощью Манхэттенского расстояния, ...

Подробнее

Вопрос 328. Решение с минимальной суммой путей Постановка задачи Минимальная сумма пути Решение LeetCode — «Минимальная сумма пути» говорит, что задана сетка anxm, состоящая из неотрицательных целых чисел, и нам нужно найти путь из верхнего левого угла в нижний правый, который минимизирует сумму всех чисел на пути . Мы можем только двигаться...

Подробнее

Вопрос 329. Уникальное решение для литкода Paths II Постановка задачи Решение LeetCode Unique Paths II — «Unique Paths II» утверждает, что при заданной сетке mxn робот начинает с верхнего левого угла сетки. Нам нужно найти общее количество способов добраться до нижнего правого угла сетки. ...

Подробнее

Вопрос 330. Поиск решения по литкоду 2D Matrix II Постановка задачи Поиск в 2D-матрице II Решение LeetCode — «Поиск в 2D-матрице II» просит вас найти эффективный алгоритм, который ищет целевое значение в целочисленной матричной матрице mxn. Целые числа в каждой строке, как и в столбце, сортируются в порядке возрастания. Пример: Вход: матрица = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,17,24, 18,21,23,26,30],[5]], цель = XNUMX Вывод: правда...

Подробнее

Вопрос 331. Установить решение Matrix Zeroes Leetcode Постановка задачи Решение Set Matrix Zeroes LeetCode — «Set Matrix Zeroes» утверждает, что вам дана целочисленная матричная матрица mxn. Нам нужно изменить входную матрицу таким образом, чтобы, если какая-либо ячейка содержит элемент 0, затем установить всю ее строку и столбец. до 0 с. Вы должны сделать это в...

Подробнее

Вопрос 332. Решение Leetcode для поиска слов Постановка задачи. Для доски mxn и слова найдите, существует ли это слово в сетке. Слово может быть составлено из букв последовательно соседних ячеек, где «соседние» ячейки соседствуют по горизонтали или вертикали. Одна и та же буквенная ячейка не может использоваться более одного раза. Пример ...

Подробнее

Вопрос 333. Проблема с золотым рудником Постановка задачи «Задача золотого рудника» гласит, что вам дана двумерная сетка, в каждой ячейке которой помещены неотрицательные монеты. Изначально майнер стоит в первом столбце, но для строки нет ограничений. Он может стартовать в любом ряду. ...

Подробнее

Вопрос 334. Минимальное время, необходимое для гниения всех апельсинов Постановка задачи Задача «Минимальное время, необходимое для гниения всех апельсинов» утверждает, что вам дан 2D-массив, каждая ячейка которого имеет одно из трех возможных значений 0, 1 или 2. 0 означает пустую ячейку. 1 означает свежий апельсин. 2 означает тухлый апельсин. Если гнилой ...

Подробнее

Вопрос 335. Проблема с мобильной цифровой клавиатурой Постановка задачи В задаче о мобильной цифровой клавиатуре мы рассматриваем цифровую клавиатуру. Нам нужно найти все количество возможных числовых последовательностей заданной длины, чтобы вам было разрешено нажимать только кнопки, расположенные сверху, снизу, слева и справа от текущей кнопки. Тебе не разрешено ...

Подробнее

Вопрос 336. Наибольшая прямоугольная подматрица, сумма которой равна 0 Постановка задачи Найдите подматрицу максимального размера в двумерном массиве, сумма которого равна нулю. Подматрица - это не что иное, как 2D-массив внутри данного 2D-массива. Итак, у вас есть матрица целых чисел со знаком, вам нужно вычислить сумму подматриц и найти матрицу с ...

Подробнее

Вопрос 337. Умножение матричной цепочки В задаче умножения цепочки матриц II мы задали размерность матриц, находим такой порядок их умножения, чтобы количество операций, участвующих в умножении всех матриц, было минимальным. Предположим, у вас есть 3 матрицы A, B, C размеров axb, bx ...

Подробнее

Вопрос 338. Установить нули матрицы В задаче набора нулей матрицы мы задали матрицу (n X m), если элемент равен 0, задали всю его строку и столбец 0. Примеры Входные данные: {[1, 1, 1] [1, 0, 1] [1, 1, 1]} Вывод: {[1, 0, 1] [0, 0, 0] [1, 0, 1] ...

Подробнее

Вопрос 339. Уникальные пути Дана двухмерная сетка mxn, и вы стоите в самой верхней и крайней левой ячейке сетки. т.е. ячейка, расположенная в (2). Найдите количество уникальных путей, по которым можно добраться до ячейки, расположенной в (m, n), от ячейки, расположенной в (1,1) ...

Подробнее

Вопрос 340. Умножение цепочки матриц с использованием динамического программирования Умножение цепочки матриц - это метод, с помощью которого мы находим лучший способ умножения заданных матриц. Все мы знаем, что матричное умножение ассоциативно (A * B = B * A) по своей природе. Итак, у нас есть много заказов, в которых мы хотим произвести умножение. Собственно, в этом алгоритме ...

Подробнее

Вопрос 341. Проверьте, находятся ли строки на расстоянии K друг от друга или нет Постановка задачи Для двух строк и целого числа k напишите программу, которая проверяет, находятся ли данные строки на расстоянии k друг от друга или нет. То есть, если какой-либо символ не соответствует друг другу или какой-либо символ должен быть удален, это называется расстоянием k. Формат ввода Первый ...

Подробнее

Вопрос 342. Проверьте, все ли строки матрицы вращаются по кругу друг друга Постановка задачи В задаче «Проверить, все ли строки матрицы вращаются по кругу друг друга» мы задали символьную матрицу, напишите программу, чтобы определить, все ли строки вращаются по кругу друг друга или нет. Если все строки представляют собой круговые вращения друг друга, выведите ...

Подробнее

Вопрос 343. Найдите строку с максимальным количеством единиц Постановка задачи В задаче «Найти строку с максимальным числом единиц» мы дали матрицу (1D-массив), содержащую двоичные цифры с каждой отсортированной строкой. Найдите строку, в которой максимальное количество единиц. Формат ввода Первая строка содержит два целых числа n, m. Далее n строк ...

Подробнее

Вопрос 344. Проблема знаменитостей Постановка задачи В задаче о знаменитостях есть комната из N человек: Найдите знаменитость. Условия для знаменитостей: если A - знаменитость, тогда все остальные в комнате должны знать A. A не должен знать никого в комнате. Нам нужно найти человека, который удовлетворяет этим условиям. ...

Подробнее

Microsoft Другие вопросы

Вопрос 345. Решение обратного целочисленного литкода Постановка задачи Обратное целое LeetCode Solution говорит, что: – Учитывая 32-разрядное целое число x со знаком, верните x с перевернутыми цифрами. Если изменение x приводит к тому, что значение выходит за пределы диапазона 32-разрядных целых чисел со знаком [-231, 231 - 1], тогда возвращается 0. Предположим, что среда не позволяет хранить 64-разрядные целые числа (со знаком или без знака). Пример 1: ...

Подробнее

Вопрос 346. Найти K ближайших элементов Решение LeetCode Постановка задачи Найти K ближайших элементов LeetCode Решение. Дан отсортированный массив целых чисел arr, два целых числа k и x, вернуть k целых чисел, ближайших к x в массиве. Результат также должен быть отсортирован в порядке возрастания. Целое число a ближе к x, чем целое число b, если: |a - x| < |b - x| или |a - x| == |б - ...

Подробнее

Вопрос 347. Сортировка цветов Решение LeetCode Постановка задачи Сортировка цветов LeetCode Решение. Дан массив nums с n объектами, окрашенными в красный, белый или синий цвет, отсортировать их на месте так, чтобы объекты одного цвета были смежными, а цвета располагались в порядке красный, белый и синий. Мы будем использовать целые числа 0, 1 и 2 для обозначения красного, белого и синего цветов соответственно. ...

Подробнее

Вопрос 348. Номер столбца листа Excel Решение LeetCode Постановка задачи Номер столбца листа Excel LeetCode Решение гласит, что при заданной строке columnTitle, которая представляет заголовок столбца, отображаемый на листе Excel, вернуть соответствующий номер столбца. Например: А -> 1 В -> 2 С -> 3... Z -> 26 АА -> 27 АВ -> 28... ...

Подробнее

Вопрос 349. Самая длинная общая подпоследовательность Решение LeetCode Постановка задачи Самая длинная общая подпоследовательность LeetCode Решение. Даны две строки text1 и text2, вернуть длину их самой длинной общей подпоследовательности. Если общей подпоследовательности нет, вернуть 0. Подпоследовательность строки — это новая строка, сгенерированная из исходной строки с удалением некоторых символов (может быть ни одного) без изменения относительного порядка оставшихся...

Подробнее

Вопрос 350. Range Sum Query 2D – неизменное решение LeetCode Постановка задачи Запрос суммы диапазона диапазона 2D – Неизменяемое решение LeetCode – Учитывая двумерную матрицу, обработайте несколько запросов следующего типа: Вычислите сумму элементов матрицы внутри прямоугольника, определяемого его левым верхним углом (row2, col1) и нижним правым углом. угол (строка1, столбец2). Реализуйте класс NumMatrix: NumMatrix(int[][] ...

Подробнее

Вопрос 351. Номер палиндрома Решение LeetCode Постановка задачи Номер палиндрома LeetCode Решение говорит, что – Учитывая целое число x, вернуть true, если x является целым числом палиндрома. Целое число является палиндромом, если оно читается так же, как в прямом, так и в обратном порядке. Например, 121 — это палиндром, а 123 — нет. Пример 1: Ввод: x = 121 Вывод: true Объяснение: 121 читается как 121 слева направо...

Подробнее

Вопрос 352. Решение LeetCode для кратчайшего несортированного непрерывного подмассива Постановка задачи Кратчайший несортированный непрерывный подмассив Решение LeetCode говорит, что — Учитывая целочисленный массив nums, вы должны найти один непрерывный подмассив, который, если вы только отсортируете этот подмассив в порядке возрастания, то весь массив будет отсортирован в порядке возрастания. Возвращает длину кратчайшего подмассива. Пример 1: ...

Подробнее

Вопрос 353. Решение LeetCode с перекрытием прямоугольников Постановка задачи: прямоугольное перекрытие Решение LeetCode — говорится, что прямоугольник с выравниванием по оси представлен в виде списка [x1, y1, x2, y2], где (x1, y1) — координата его нижнего левого угла, а (x2 , y2) — координата его правого верхнего угла. Его верхний и нижний края параллельны оси X, а левый...

Подробнее

Вопрос 354. Stone Game IV Решение LeetCode Постановка задачи Stone Game IV LeetCode Solution – Алиса и Боб по очереди играют в игру, причем Алиса начинает первой. Изначально в куче n камней. В свой ход каждый игрок делает ход, состоящий в удалении любого ненулевого числа камней в куче. Также, если игрок не может сделать ход, он...

Подробнее

Вопрос 355. Вставить в отсортированный круговой связанный список Решение LeetCode Постановка задачи: вставка в отсортированный циклический связанный список. Решение LeetCode. Говорится о том, что для заданного узла циклического связанного списка, отсортированного в порядке возрастания, напишите функцию для вставки значения insertVal в список таким образом, чтобы он оставался отсортированным циклическим списком. Данный узел может быть...

Подробнее

Вопрос 356. Расположение монет Leetcode Solution Постановка задачи Размещение монет Решение LeetCode — «Расстановка монет» просит вас построить лестницу из этих монет. Лестница состоит из k рядов, где i-й ряд состоит ровно из i монет. Последний ряд лестницы может быть неполным. За заданное количество монет вернуть...

Подробнее

Вопрос 357. Нечетно-четный связанный список Решение Leetcode Постановка задачи. Четно-нечетный связанный список. Решение LeetCode. «Четно-нечетный связанный список» утверждает, что задан непустой односвязный список. Нам нужно сгруппировать все узлы с нечетными индексами вместе, за которыми следуют узлы с четными индексами, и вернуть переупорядоченный список. Обратите внимание, что относительный порядок внутри обоих...

Подробнее

Вопрос 358. Создайте решение для таблицы лидеров Постановка задачи Дизайн таблицы лидеров Решение LeetCode – «Создать таблицу лидеров» предлагает вам выполнить 3 функции: addScore(playerId, score): обновить таблицу лидеров, добавив счет к счету данного игрока. Если такого игрока нет, добавьте его в таблицу лидеров. top(K): вернуть максимальную сумму ...

Подробнее

Вопрос 359. Разделить два целых числа Решение Leetcode Постановка задачи Деление на два целых числа Решение LeetCode — «Деление на два целых числа» утверждает, что вам дано два целых числа делимое и делитель. Верните частное после деления делимого на делитель. Обратите внимание, что мы предполагаем, что имеем дело со средой, которая может хранить целые числа внутри 32-битного целого числа со знаком...

Подробнее

Вопрос 360. Робот-пылесос Leetcode Solution Постановка задачи Робот-уборщик комнаты Решение LeetCode — «Робот-уборщик комнаты» утверждает, что задан робот в двоичной сетке amxna, где 0 представляет собой стену, а 1 — пустой слот. Начальная позиция робота гарантированно пуста и робот движется внутри...

Подробнее

Вопрос 361. Решение LRU Cache Leetcode Постановка задачи Кэш LRU Решение LeetCode – «Кэш LRU» просит вас спроектировать структуру данных, которая следует за кэшем наименее недавно использовавшихся (LRU) Нам необходимо реализовать класс LRUCache со следующими функциями: LRUCache(int capacity): Инициализирует кэш LRU с положительной размерной емкостью. int get(int key): вернуть значение...

Подробнее

Вопрос 362. Слияние отсортированных списков Решение Leetcode Постановка задачи Объединить k отсортированных списков Решение LeetCode — «Объединить k отсортированных списков» утверждает, что задан массив из k связанных списков, где значения каждого связанного списка отсортированы в порядке возрастания. Нам нужно объединить все k-связанные списки в один связанный список и вернуть...

Подробнее

Вопрос 363. Range Sum Query 2D – неизменное решение Leetcode Постановка задачи Запрос суммы диапазона диапазона 2D — неизменяемый литкод Решение — при наличии двумерной матричной матрицы обработайте несколько запросов следующего типа: вычислить сумму элементов матрицы внутри прямоугольника, определяемого его левым верхним углом (row2, col1) и нижним правым угол (строка1, столбец2). Реализуйте класс NumMatrix: NumMatrix(int[][] matrix) Инициализирует объект целым числом...

Подробнее

Вопрос 364. Этикетки для разделов Решение LeetCode Постановка задачи Метки разделов LeetCode Решение. Вам дана строка s. Мы хотим разделить строку на как можно больше частей, чтобы каждая буква встречалась не более чем в одной части. Обратите внимание, что разбиение сделано так, что после объединения всех частей по порядку...

Подробнее

Вопрос 365. Число Фибоначчи Решение LeetCode Постановка задачи Решение LeetCode числа Фибоначчи. «Число Фибоначчи» утверждает, что числа Фибоначчи, обычно обозначаемые как F(n), образуют последовательность, называемую последовательностью Фибоначчи, так что каждое число является суммой двух предыдущих, начиная с 0 и 1. То есть F(0) = 0, F(1) = 1 F(n) = F(n - 1) + F(n...

Подробнее

Вопрос 366. Решение LeetCode для обхода диагонали Постановка задачи. Диагональный обход. Решение LeetCode. Учитывая двумерный целочисленный массив nums, вернуть все элементы nums в диагональном порядке, как показано на рисунках ниже. Ввод: nums = [[2],[1,2,3],[4,5,6]] Вывод: [7,8,9] Объяснение диагонального обхода решения LeetCode Основная идея Первая строка и последний столбец в этой задаче служили бы...

Подробнее

Вопрос 367. Действительный Tic-Tac-Toe State Решение LeetCode Постановка задачи Действительное состояние крестиков-ноликов Решение LeetCode. Нам дается доска крестиков-ноликов в виде доски массива строк, и нас просят вернуть истину, если и только если возможно достичь этой позиции доски во время действительных крестиков-ноликов. игра в носки. Доска представляет собой массив 3 х 3...

Подробнее

Вопрос 368. Обратные слова в решении String III LeetCode Постановка задачи Обратные слова в строке III Решение LeetCode. Нам дается строка, и нас просят изменить порядок символов в каждом слове в предложении на противоположный, сохраняя при этом пробелы и первоначальный порядок слов. Примеры и пояснения Пример 1: Ввод: s = "Возьмем LeetCode...

Подробнее

Вопрос 369. Подсчет подматриц с помощью решения LeetCode Постановка задачи Подсчет подматриц со всеми единицами Решение LeetCode. Нам дана двоичная матрица mxn, и нас просят вернуть количество подматриц, в которых все единицы. Примеры и пояснения Пример 1: Ввод: мат = [[1,0,1],[1,1,0],[1,1,0]] Вывод: 13 Объяснение: Имеется 6 прямоугольников со стороной ...

Подробнее

Вопрос 370. Удаление дубликатов из отсортированного списка Решение LeetCode Постановка задачи Удаление дубликатов из отсортированного списка LeetCode Решение. Нам дан заголовок отсортированного связанного списка. Нас просят удалить все дубликаты, чтобы каждый элемент появлялся только один раз, а также возвращал отсортированный связанный список. Примеры и пояснения Пример 1: Ввод: голова ...

Подробнее

Вопрос 371. Решение LeetCode для клонирования графа Постановка задачи Клонирование графа LeetCode Решение. Нам дают ссылку на узел в связном неориентированном графе и просят вернуть глубокую копию графа. Глубокая копия - это, по сути, клон, в котором ни один узел, присутствующий в глубокой копии, не должен иметь ссылку...

Подробнее

Вопрос 372. Деревья минимальной высоты Решение LeetCode Постановка задачи Деревья минимальной высоты. Решение LeetCode. Нам дано дерево из n узлов, помеченных от 0 до n-1 как двумерный массив «ребер», где ребро [i] = [a_i, b_i] указывает на наличие ненаправленного ребра между два узла a_i и b_i в дереве. У нас есть ...

Подробнее

Вопрос 373. K-й наименьший элемент в отсортированной матрице Решение LeetCode Постановка задачи K-й наименьший элемент в отсортированной матрице Решение LeetCode. Нам дана матрица размера n, в которой каждая из строк и столбцов отсортирована в порядке возрастания. Нас просят вернуть k-й наименьший элемент в матрице. Обратите внимание, что это kth ...

Подробнее

Вопрос 374. Количество островов II Решение LeetCode Постановка задачи Число островов II Решение LeetCode. Вам дана пустая двумерная бинарная сетка размером m x n. Сетка представляет собой карту, где 2 представляют воду, а 0 представляют сушу. Изначально все ячейки сетки являются водными ячейками (т.е. все ячейки нулевые). Мы можем выполнить добавление земли ...

Подробнее

Вопрос 375. Количество бросков игральных костей с целевой суммой Решение LeetCode Постановка задачи Количество бросков игральных костей с заданной суммой. Решение LeetCode. У вас есть n игральных костей, и каждая из них имеет k граней, пронумерованных от 1 до k. Имея три целых числа n, k и цель, верните количество возможных способов (из общего числа способов) бросить кости так, чтобы сумма чисел, выпавших лицом вверх, равнялась цели. Поскольку ответ может быть...

Подробнее

Вопрос 376. Решение LeetCode для гоночных автомобилей Постановка задачи. Решение LeetCode гоночного автомобиля. Ваш автомобиль стартует с позиции 0 и имеет скорость +1 на бесконечной числовой прямой. Ваш автомобиль может уйти в отрицательные позиции. Ваш автомобиль едет автоматически в соответствии с последовательностью инструкций «А» (ускорение) и «R» (задний ход): Когда вы получаете команду «А», ваш автомобиль делает следующее: положение += скорость ...

Подробнее

Вопрос 377. Удаление дубликатов из отсортированного списка II Решение LeetCode Постановка задачи Удаление дубликатов из отсортированного списка II Решение LeetCode. Учитывая начало отсортированного связанного списка, удалите все узлы с повторяющимися номерами, оставив только отдельные номера из исходного списка. Возвращает также отсортированный связанный список. Ввод: голова = [1,2,3,3,4,4,5] Вывод: [1,2,5] Пояснение Идея состоит в том, чтобы пройти...

Подробнее

Вопрос 378. Кратчайший путь в сетке с устранением препятствий Решение LeetCode Постановка задачи Кратчайший путь в сетке с устранением препятствий. LeetCode Решение. Вам дана сетка целочисленной матрицы mxn, в которой каждая ячейка либо 0 (пустая), либо 1 (препятствие). Вы можете перемещаться вверх, вниз, влево или вправо от и к пустой ячейке за один шаг. Возвращает минимальное количество шагов, чтобы пройти от верхнего левого...

Подробнее

Вопрос 379. Можно разместить цветы Решение LeetCode Постановка задачи Можно разместить цветы LeetCode Решение – У вас есть длинная клумба, в которой часть участков засажена, а часть нет. Однако цветы нельзя сажать на соседних участках. Дан целочисленный массив цветочной клумбы, содержащий 0 и 1, где 0 означает пустую, а 1 означает не пустую, и целое число n, вернуть, если n новых цветов можно посадить в ...

Подробнее

Вопрос 380. Первый уникальный символ в строковом решении LeetCode Постановка задачи Первый уникальный символ в строке Решение LeetCode. По заданной строке s найти в ней первый неповторяющийся символ и вернуть его индекс. Если он не существует, верните -1. Пример Контрольный пример 1: Входные данные: s = «leetcode» Выходные данные: 0 Контрольный пример 2: Входные данные: s = «aabb» Выходные данные: -1 Объяснение ...

Подробнее

Вопрос 381. Анализ шаблона посещения сайта пользователем LeetCode Solution Постановка задачи Проанализируйте шаблон посещения веб-сайта пользователем. Решение LeetCode. Вам даны два массива строк: имя пользователя и веб-сайт, а также метка времени в виде целочисленного массива. Все заданные массивы имеют одинаковую длину, а кортеж [имя пользователя[i], веб-сайт[i], временная метка[i]] указывает, что пользователь username[i] посетил веб-сайт веб-сайт[i] в ​​момент времени с временной меткой[i]. Шаблон — это список из трех веб-сайтов (не обязательно разных). Например, ["дом",...

Подробнее

Вопрос 382. Инвертировать двоичное дерево Решение LeetCode Постановка задачи: инвертировать бинарное дерево. Решение LeetCode. В этом вопросе, учитывая корень любого бинарного дерева, требуется решение для инвертирования бинарного дерева, что означает, что левое дерево должно стать правым деревом и наоборот. Объяснение Мы можем спросить себя, какой обход дерева будет...

Подробнее

Вопрос 383. Ближайшее значение дерева двоичного поиска Решение Leetcode Постановка задачи: Ближайшее значение бинарного дерева поиска Решение Leetcode. Учитывая корень бинарного дерева поиска и целевое значение, верните значение в BST, которое ближе всего к целевому. Пример : Пример 1 Ввод: корень = [4,2,5,1,3], цель = 3.714286 Вывод: 4 Пример 2 Ввод: корень = [1], цель ...

Подробнее

Вопрос 384. Список разделов Литкод Решение Постановка задачи: литкод списка разделов. Решение. Учитывая заголовок связанного списка и значение x, разделите его таким образом, чтобы все узлы, меньшие x, располагались перед узлами, большими или равными x. Вы должны сохранить исходный относительный порядок узлов в каждом из двух разделов. Пример : Пример 1 Ввод: голова = ...

Подробнее

Вопрос 385. Дизайн История браузера Решение LeetCode Постановка задачи Дизайн История браузера Решение LeetCode. У вас есть браузер с одной вкладкой, с которой вы начинаете на главной странице и можете перейти по другому URL-адресу, вернуться в историю с количеством шагов или продвинуться вперед по истории с количеством шагов. Реализуйте класс BrowserHistory: BrowserHistory(string homepage) Инициализирует объект домашней страницей...

Подробнее

Вопрос 386. Оценка обратной польской записи LeetCode Solution Постановка задачи Вычислить обратную польскую запись Решение LeetCode – Оценить значение арифметического выражения в обратной польской записи. Допустимые операторы +, -, * и /. Каждый операнд может быть целым числом или другим выражением. Обратите внимание, что деление между двумя целыми числами должно усекаться до нуля. Гарантируется, что данный...

Подробнее

Вопрос 387. 3Sum Ближайшее решение LeetCode Постановка задачи 3Sum Ближайшее решение LeetCode. Дан массив целых чисел nums длины n и целочисленная цель, найдите три целых числа в nums, сумма которых ближе всего к цели. Возвращает сумму трех целых чисел. Вы можете предположить, что каждый вход будет иметь ровно одно решение. Ввод: nums = [-1,2,1,-4], цель = 1 Вывод: ...

Подробнее

Вопрос 388. Крупнейшее решение для литкода со знаком плюс Постановка задачи: Самый большой буквенный код со знаком плюс Решение. Вам дано целое число n. У вас есть двоичная сетка nxn со всеми значениями, изначально равными 1, за исключением некоторых индексов, заданных в массиве mines. i-й элемент массива mines определяется как mines[i] = [xi, yi], где grid[xi][yi] == 0. Возвращает порядок наибольшего выровненного по оси плюс ...

Подробнее

Вопрос 389. Решение LeetCode для непрерывного массива Постановка задачи Непрерывный массив LeetCode Решение. Дан двоичный массив nums, вернуть максимальную длину непрерывного подмассива с равным количеством 0 и 1. Вход: nums = [0,1] Выход: 2 Объяснение: [0, 1] равно самый длинный непрерывный подмассив с равным количеством 0 и 1. Объяснение Теперь что мы...

Подробнее

Вопрос 390. Решение N-Queens LeetCode Постановка задачи N-Queens LeetCode Решение. Головоломка с n-ферзями — это задача о размещении n ферзей на шахматной доске размером nxn так, чтобы никакие два ферзя не атаковали друг друга. По заданному целому числу n найти все различные решения головоломки с n ферзями. Вы можете вернуть ответ в любом порядке. Каждое решение содержит отдельную конфигурацию платы ...

Подробнее

Вопрос 391. Самый большой прямоугольник в гистограмме Решение LeetCode Постановка задачи Самый большой прямоугольник в гистограмме LeetCode Решение. Дан массив целых чисел высоты, представляющий высоту столбца гистограммы, где ширина каждого столбца равна 1, вернуть площадь наибольшего прямоугольника в гистограмме. Пример контрольного примера 1: Входные данные: heights = [2, 1, 5, 6, 2, 3] Выходные данные: 10 Объяснение: ...

Подробнее

Вопрос 392. Сопоставление регулярных выражений Сопоставление регулярных выражений Решение LeetCode Постановка задачи Сопоставление регулярных выражений Сопоставление регулярных выражений Решение LeetCode. Для заданной входной строки s и шаблона p реализовать сопоставление регулярных выражений с поддержкой '.' и где: '.' Соответствует любому одиночному символу. ​​​​ '*' Соответствует нулю или более предшествующих элементов. Сопоставление должно охватывать всю входную строку (не частичную). Пример контрольного примера 1: Ввод: ...

Подробнее

Вопрос 393. Двоичное дерево, вид справа LeetCode Solution Постановка задачи Двоичное дерево. Вид справа. Решение LeetCode. Учитывая корень бинарного дерева, представьте, что вы стоите с правой стороны от него, и верните значения узлов, которые вы видите, упорядоченные сверху вниз. Пример контрольного примера 1: ввод: root = [1, 2, 3, null, 5, null, ...

Подробнее

Вопрос 394. Преобразование зигзага Решение LeetCode Постановка задачи Зигзагообразное преобразование LeetCode Решение. Строка «PAYPALISHIRING» написана зигзагообразным шаблоном в заданном количестве строк, например так: (вы можете отобразить этот шаблон фиксированным шрифтом для лучшей разборчивости) PAHNAPLSIIGYI ...

Подробнее

Вопрос 395. Увеличьте расстояние до ближайшего человека Решение LeetCode Постановка задачи Максимальное расстояние до ближайшего человека Решение LeetCode. Вам дан массив, представляющий ряд мест, где seat[i] = 1 представляет человека, сидящего на i-м месте, а seat[i] = 0 означает, что i-е место пусто. (0-индексированный). Есть по крайней мере одно свободное место и по крайней мере один сидящий человек. Алекс хочет...

Подробнее

Вопрос 396. Решение LeetCode для сапера Постановка задачи Сапер LeetCode Решение – Давайте поиграем в игру «Сапер» (Википедия, онлайн-игра)! Вам дается поле матрицы mxn символов, представляющее игровое поле, где: «M» представляет собой нераскрытую шахту, «E» представляет собой нераскрытую пустую клетку, «B» представляет раскрытую пустую клетку, в которой нет соседних мин (т. е. вверху, внизу). , влево, вправо и все...

Подробнее

Вопрос 397. Хранилище ключей и значений на основе времени Решение LeetCode Постановка задачи Хранилище данных типа "ключ-значение" на основе времени Решение LeetCode. Разработайте структуру данных типа "ключ-значение" на основе времени, которая может хранить несколько значений одного и того же ключа с разными временными метками и получать значение ключа в определенной временной метке. Реализуйте класс TimeMap: TimeMap() Инициализирует объект структуры данных. void set (строковый ключ, строка...

Подробнее

Вопрос 398. Найти медиану из потока данных Решение LeetCode Постановка задачи Найти медиану из потока данных LeetCode Решение. Медиана — это среднее значение в упорядоченном списке целых чисел. Если размер списка четный, среднего значения нет, а медиана — это среднее значение двух средних значений. Например, для arr = [2,3,4] медиана...

Подробнее

Вопрос 399. Перестановка в решении String Leetcode Постановка задачи: перестановка в буклетном коде строки Решение. Даны две строки s1 и s2, вернуть true, если s2 содержит перестановку s1, или false в противном случае. Другими словами, вернуть true, если одна из перестановок s1 является подстрокой s2. Пример : Пример 1 Ввод: s1 = "ab", s2 = "eidbaooo" Вывод: true Объяснение: s2 содержит одну перестановку s1 ("ba"). ...

Подробнее

Вопрос 400. Решение LeetCode для столкновения с астероидом Постановка задачи Столкновение с астероидом Решение LeetCode. Нам дан массив астероидов из целых чисел, представляющих астероиды в ряду. Для каждого астероида абсолютное значение представляет его размер, а знак представляет его направление (положительное значение означает право, отрицательное значение означает лево). Каждый астероид движется с одинаковой скоростью. Узнать состояние...

Подробнее

Вопрос 401. Решение LeetCode для диагонального перемещения Постановка задачи. Диагональный обход LeetCode. Решение. По заданной матрице mxn верните массив всех элементов массива в диагональном порядке. Ввод: мат = [[1,2,3],[4,5,6],[7,8,9]] Вывод: [1,2,4,7,5,3,6,8,9] Объяснение Рассмотрим индексы диагоналей матрицы NxM. В качестве примера возьмем матрицу 4×4: ...

Подробнее

Вопрос 402. Самый длинный возрастающий путь в матричном решении LeetCode Постановка задачи Самый длинный растущий путь в матрице Решение LeetCode. По заданной матрице mxn целых чисел вернуть длину самого длинного возрастающего пути в матрице. Из каждой клетки вы можете двигаться в четырех направлениях: влево, вправо, вверх или вниз. Вы не можете двигаться по диагонали или выходить за границу (т. е. обход не разрешен). Вход: ...

Подробнее

Вопрос 403. Количество закрытых островов Решение Leetcode Постановка задачи: число закрытых островов. Решение литкода. Дана двумерная сетка, состоящая из нулей (суша) и единиц (вода). Остров — это максимальная 2-направленно связанная группа нулей, а замкнутый остров — это остров, целиком (слева, сверху, справа, снизу) окруженный единицами. Возвращает количество закрытых островов. Пример : Пример 0 Ввод: сетка = [[1],[4],[0, 1],[1],[1,1,1,1,1,1,1,0]] Выход :1,0,0,0,0,1,1,0 Пояснение: Острова в сером...

Подробнее

Вопрос 404. Решение LeetCode для сериализации и десериализации двоичного дерева Постановка задачи Сериализация и десериализация двоичного дерева Решение LeetCode. Сериализация — это процесс преобразования структуры данных или объекта в последовательность битов, чтобы их можно было сохранить в файле или буфере памяти или передать по каналу сетевого соединения для последующего восстановления. в ...

Подробнее

Вопрос 405. Максимальная сумма путей двоичного дерева Решение LeetCode Постановка задачи Двоичное дерево Максимальная сумма путей LeetCode Решение. Путь в двоичном дереве представляет собой последовательность узлов, в которой каждая пара смежных узлов в последовательности имеет соединяющее их ребро. Узел может появиться в последовательности не более одного раза. Обратите внимание, что путь не нужен...

Подробнее

Вопрос 406. Робот, ограниченный кругом LeetCode Solution Постановка задачи Робот, ограниченный кругом Решение LeetCode. На бесконечной плоскости робот изначально стоит в точке (0, 0) и смотрит на север. Обратите внимание, что: Северное направление является положительным направлением оси Y. Южное направление является отрицательным направлением оси Y. Восточное направление является положительным направлением оси X. Западное направление - это...

Подробнее

Вопрос 407. Минимальные ходы коня Решение LeetCode Постановка задачи Минимум ходов конем LeetCode Решение. На бесконечной шахматной доске с координатами от -бесконечности до +бесконечности у вас есть конь на поле [0, 0]. У коня есть 8 возможных ходов, как показано ниже. Каждый ход — это две клетки по сторонам света, затем одна клетка по ортогональному направлению. Вернуть минимальное число...

Подробнее

Вопрос 408. Двоичное дерево Zigzag Level Order Traversal Решение LeetCode Постановка задачи. Двоичное дерево. Зигзагообразный обход по порядку. LeetCode Решение. Учитывая корень бинарного дерева, вернуть зигзагообразный обход по порядку значений его узлов. (т. е. слева направо, затем справа налево для следующего уровня и поочередно). Ввод: root = [3,9,20,null,null,15,7] Вывод: [[3],[20,9],[15,7]] Пояснение Мы...

Подробнее

Вопрос 409. Найдите повторяющийся номер Решение LeetCode Постановка задачи Найдите повторяющееся число Решение LeetCode. Дан массив целых чисел nums, содержащий n + 1 целое число, где каждое целое число находится в диапазоне [1, n] включительно. В nums есть только одно повторяющееся число, верните это повторяющееся число. Вы должны решить проблему, не изменяя массив nums и используя только постоянное дополнительное пространство. Ввод: nums = [1,3,4,2,2] Вывод: 2 Объяснение ...

Подробнее

Вопрос 410. Змеи и лестницы Решение LeetCode Постановка задачи Змеи и лестницы Решение LeetCode. Вам дана доска с целочисленной матрицей nxn, на которой ячейки пронумерованы от 1 до n2 в стиле Бустрофедона, начиная с нижнего левого края доски (т.е. board[n - 1][0]) и чередование направлений в каждом ряду. Вы начинаете на поле 1 доски. В каждом движении...

Подробнее

Вопрос 411. Отсутствует элемент в отсортированном массиве Решение LeetCode Постановка задачи: отсутствующий элемент в отсортированном массиве. Решение LeetCode. Дан целочисленный массив nums, отсортированный в порядке возрастания, и все его элементы уникальны, а также задано целое число k. Возвратите k-е отсутствующее число, начиная с крайнего левого числа массива. Пример: Пример 1 Ввод: nums = [4,7,9,10], k = ...

Подробнее

Вопрос 412. Сумма пути II Решение LeetCode Постановка задачи: сумма путей II LeetCode Решение. Учитывая корень двоичного дерева и целое число targetSum, вернуть все пути от корня к листу, где сумма значений узлов в пути равна targetSum. Каждый путь должен быть возвращен в виде списка значений узлов, а не ссылок на узлы. Путь от корня к листу — это путь, начинающийся с...

Подробнее

Вопрос 413. Alien Dictionary Решение LeetCode Постановка задачи Alien Dictionary Решение LeetCode. Существует новый язык пришельцев, использующий английский алфавит. Однако порядок среди букв вам неизвестен. Вам дан список строк слов из словаря инопланетного языка, где строки в словах отсортированы лексикографически по правилам этого нового языка. ...

Подробнее

Вопрос 414. Продукт массива, кроме решения Self LeetCode Постановка задачи Product of Array Except Self LeetCode Решение – Учитывая целочисленный массив nums, вернуть такой массив ответа, что answer[i] равен произведению всех элементов nums, кроме nums[i]. Произведение любого префикса или суффикса чисел гарантированно соответствует 32-битному целому числу. Вы должны написать алгоритм, который работает за время O(n) и не использует деление...

Подробнее

Вопрос 415. Дизайн Skiplist Решение LeetCode Постановка задачи Разработка списка пропусков Решение LeetCode. Создайте список пропусков без использования каких-либо встроенных библиотек. Список пропуска — это структура данных, для добавления, удаления и поиска которой требуется время O(log(n)). По сравнению с деревом и красно-черным деревом, которые имеют ту же функцию и производительность, длина кода Skiplist может быть сравнительно ...

Подробнее

Вопрос 416. Решение LeetCode для самой длинной красивой подстроки Постановка задачи: Самая длинная хорошая подстрока Решение LeetCode. Строка s является хорошей, если каждая буква алфавита, содержащаяся в s, встречается как в верхнем, так и в нижнем регистре. Например, «abABB» хорош, потому что появляются «A» и «a», а также появляются «B» и «b». Однако «abA» не потому, что появляется «b», а «B» нет. Учитывая строку s, вернуть самую длинную подстроку s, которая подходит. Если их несколько, вернуть подстроку ...

Подробнее

Вопрос 417. Решение LeetCode для перестановки палиндромов Постановка задачи Перестановка палиндрома LeetCode Решение. Нам дают строку и спрашивают, может ли перестановка данной строки образовать палиндром. Примеры и пояснения Пример 1: Ввод: s = "code" Вывод: false Объяснение: мы не можем расположить буквы "code" так, чтобы получился палиндром Пример 2: ...

Подробнее

Вопрос 418. Пересечение двух связанных списков Решение LeetCode Постановка задачи Пересечение двух связанных списков Решение LeetCode. Нам даны заголовки двух сильно связанных списков headA и headB. Также известно, что два связанных списка могут пересекаться в какой-то точке. Нас просят вернуть узел, в котором они пересекаются или нуль, если...

Подробнее

Вопрос 419. Последовательность перестановок Решение LeetCode Постановка задачи Последовательность перестановок Решение LeetCode. Множество [1, 2, 3, ..., n] содержит всего n! уникальные перестановки. Перечислив и пометив все перестановки по порядку, мы получим следующую последовательность для n = 3: "123" "132" "213" "231" "312" "321" Учитывая n и k, верните k-ю последовательность перестановок. Пример теста 1: Вход: n ...

Подробнее

Вопрос 420. Система поиска предложений Решение LeetCode Постановка задачи Предложения по поиску Система LeetCode Решение – Вам дан массив строк продуктов и строка searchWord. Разработайте систему, которая предлагает не более трех названий продуктов из продуктов после ввода каждого символа searchWord. Предлагаемые продукты должны иметь общий префикс с searchWord. Если имеется более трех товаров с...

Подробнее

Вопрос 421. Поворот изображения Решение LeetCode Постановка задачи Поворот изображения LeetCode Решение. Вам дана двумерная матрица размера nxn, представляющая изображение. Поверните изображение на 2 градусов (по часовой стрелке). Вам нужно повернуть изображение на месте, что означает, что вы должны напрямую изменить входную 90D-матрицу. НЕ выделяйте другую 2D-матрицу и не выполняйте поворот. Пример контрольного примера 2: Ввод: ...

Подробнее

Вопрос 422. Итератор Peeking Решение LeetCode Постановка задачи Просмотр итератора LeetCode Решение. Разработайте итератор, поддерживающий операцию просмотра существующего итератора в дополнение к операциям hasNext и next. Реализуйте класс PeekingIterator: PeekingIterator(Iterator nums) Инициализирует объект с помощью заданного целочисленного итератора iterator. int next() Возвращает следующий элемент массива и перемещает указатель на следующий элемент. логическое ...

Подробнее

Вопрос 423. K-й наименьший элемент в решении BST Leetcode Постановка задачи K-й наименьший элемент в решении BST Leetcode. Учитывая корень двоичного дерева поиска и целое число k, вернуть k-е наименьшее значение (с индексом 1) всех значений узлов в дереве. Примеры: Ввод: root = [3,1,4,null,2], k = 1 Вывод: 1 Ввод: root = [5,3,6,2,4,null,null,1], k ...

Подробнее

Вопрос 424. Найти листья бинарного дерева Решение LeetCode Постановка задачи Найдите листья бинарного дерева. LeetCode Решение. Имея корень бинарного дерева, соберите узлы дерева, как если бы вы делали это: Соберите все узлы-листья. Удалите все листовые узлы. Повторяйте, пока дерево не станет пустым. Пример теста 1: Ввод: root = [1, 2, 3, ...

Подробнее

Вопрос 425. Топ K частых слов Решение LeetCode Постановка задачи Top K наиболее часто встречающихся слов Решение LeetCode. Дан массив строк words и целое число k, возвратить k наиболее часто встречающихся строк. Верните ответ, отсортированный по частоте от самой высокой до самой низкой. Отсортируйте слова с одинаковой частотностью по их лексикографическому порядку. Пример теста 1: Вход: слова = ["i", "love", "leetcode", "i", "love", "coding"] k = 2 Выход: ["i", "love"] Объяснение . ..

Подробнее

Вопрос 426. Параллельные курсы II Решение LeetCode Постановка задачи Параллельные курсы II LeetCode Решение. Вам дано целое число n, которое указывает, что существует n курсов, пронумерованных от 1 до n. Вам также дается отношение массива, где отношения [i] = [prevCoursei, nextCoursei], представляющие предварительную связь между курсом prevCoursei и курсом nextCoursei: курс prevCoursei должен быть пройден перед курсом nextCoursei. Также вам предоставляется...

Подробнее

Вопрос 427. Объединить отсортированный массив LeetCode Solution Постановка задачи Слияние отсортированного массива LeetCode Решение. Вам даны два массива целых чисел nums1 и nums2, отсортированные в неубывающем порядке, и два целых числа m и n, представляющие количество элементов в nums1 и nums2 соответственно. Объедините nums1 и nums2 в один массив, отсортированный в неубывающем порядке. Окончательный отсортированный массив не должен возвращаться функцией, а должен храниться внутри массива nums1. ...

Подробнее

Вопрос 428. Свободное время сотрудников Решение LeetCode Постановка задачи. Свободное время сотрудников. Решение LeetCode. Нам дан список сотрудников, который представляет рабочее время каждого сотрудника. У каждого сотрудника есть список непересекающихся интервалов, и эти интервалы отсортированы. Возвратите список конечных интервалов, представляющих общее свободное время положительной длины для всех сотрудников, также в ...

Подробнее

Вопрос 429. Решение Maze III LeetCode Постановка задачи Лабиринт III Решение LeetCode. В лабиринте с пустыми пространствами (обозначено 0) и стенами (обозначено 1) находится мяч. Мяч может проходить через пустые места, катясь вверх, вниз, влево или вправо, но он не перестанет катиться, пока не ударится о стену. Когда мяч останавливается,...

Подробнее

Вопрос 430. Замена узлов в связанном списке Решение Leetcode Постановка задачи Перестановка узлов в связанном списке. Литкод. Решение. Вам дан заголовок связанного списка и целое число k. Верните заголовок связанного списка после замены значений k-го узла с начала и k-го узла с начала. конец (список индексируется 1). Пример: Ввод: голова = [1,2,3,4,5], k = 2...

Подробнее

Вопрос 431. Найти минимум в отсортированном массиве с поворотом II Решение LeetCode Постановка задачи Найти минимум в отсортированном с поворотом массиве II Решение LeetCode. Предположим, что массив длины n, отсортированный в возрастающем порядке, вращается от 1 до n раз. Например, массив nums = [0,1,4,4,5,6,7] может стать следующим: [4,5,6,7,0,1,4], если его повернуть 4 раза. [0,1,4,4,5,6,7], если он был повернут 7 раз. Обратите внимание, что поворот массива [a[0], a[1], a[2], ..., a[n-1]] 1 раз приводит к массиву [a[n-1], a[0] , а[1], а[2], ...

Подробнее

Вопрос 432. Удалить узел в связанном списке Решение Leetcode Постановка задачи: удаление узла из связанного списка. Решение Leetcode. Напишите функцию для удаления узла из односвязного списка. Вам не будет предоставлен доступ к началу списка, вместо этого вам будет предоставлен доступ к удаляемому узлу напрямую. Гарантируется, что удаляемый узел не...

Подробнее

Вопрос 433. Количество отдельных островов Решение Leetcode Постановка задачи Количество отдельных островов Решение LeetCode — «Количество отдельных островов» утверждает, что задана бинарная матрица anxm. Остров представляет собой группу единиц (представляющих землю), соединенных в четырех направлениях (по горизонтали или по вертикали). Остров считается таким же, как другой, тогда и только тогда, когда один остров...

Подробнее

Вопрос 434. Найдите, существует ли путь в решении Graph Leetcode Постановка задачи Найти, существует ли путь в графе Литкод Решение. Существует двунаправленный граф с n вершинами, где каждая вершина помечена от 0 до n - 1 (включительно). Ребра в графе представлены ребрами двумерного целочисленного массива, где каждое ребро [i] = [ui, vi] обозначает двунаправленное ребро между вершинами ui и вершинами vi. Каждая пара вершин...

Подробнее

Вопрос 435. Уродливое решение LeetCode номер XNUMX Постановка задачи Уродливое число II Решение LeetCode. Уродливое число — это положительное целое число, простые множители которого ограничены значениями 2, 3 и 5. По заданному целому числу n верните n-е уродливое число. Ввод: n = 10 Выход: 12 Объяснение: [1, 2, 3, 4, 5, 6, 8, 9, 10, 12] — последовательность первых 10...

Подробнее

Вопрос 436. Найдите решение Peak Element II LeetCode Постановка задачи Найдите пиковый элемент II. Решение LeetCode. Пиковый элемент в двумерной сетке — это элемент, который строго больше, чем все его соседние соседи слева, справа, сверху и снизу. Дана матричная матрица mxn с нулевым индексом, в которой нет двух одинаковых соседних ячеек, найти любой пиковый элемент mat[i][j] и вернуть массив длины 2 [i,j]. Вы можете предположить...

Подробнее

Вопрос 437. Комбинация Сумма IV Решение LeetCode Постановка задачи Сумма комбинаций IV LeetCode Решение – Учитывая массив различных целых чисел nums и целевое целое число target, вернуть количество возможных комбинаций, которые в сумме дают target. Тестовые примеры генерируются таким образом, чтобы ответ мог уместиться в 32-битном целом числе. Ввод: nums = [1,2,3], цель = 4 Вывод: 7 Объяснение: Возможный ...

Подробнее

Вопрос 438. Преобразование строки в целое (atoi) Решение LeetCode Постановка задачи Преобразование строки в целое (atoi) Решение Leetcode — «Преобразование строки в целое (atoi)» утверждает, что Реализация функции myAtoi(string s), которая преобразует строку в 32-разрядное целое число со знаком (аналогично функции atoi C/C++ ). Алгоритм для myAtoi(string s) следующий: прочитать и игнорировать все начальные пробелы. Проверить, является ли следующий символ (если...

Подробнее

Вопрос 439. Восстановление IP-адресов Leetcode Solution Постановка задачи Решение LeetCode для восстановления IP-адресов — «Восстановление IP-адресов» утверждает, что для данной строки, содержащей только цифры, нам нужно вернуть все возможные допустимые IP-адреса в любом порядке, который может быть сформирован путем вставки точек в строку. Обратите внимание, что нам не разрешено возвращаться...

Подробнее

Вопрос 440. Решение LeetCode для сжатия строк Постановка задачи Сжатие строк LeetCode Решение. Дан массив символов chars, сжать его, используя следующий алгоритм: Начните с пустой строки s. Для каждой группы последовательных повторяющихся символов в chars: Если длина группы равна 1, добавьте символ к s. В противном случае добавьте символ, за которым следует длина группы. Сжатая строка...

Подробнее

Вопрос 441. Проверка полноты решения LeetCode для бинарного дерева Постановка задачи Проверка полноты бинарного дерева Решение LeetCode. Учитывая корень бинарного дерева, определите, является ли оно полным бинарным деревом. В полном бинарном дереве каждый уровень, за исключением, возможно, последнего, полностью заполнен, и все узлы последнего уровня максимально левые. ...

Подробнее

Вопрос 442. Графическое решение LeetCode для дерева Постановка задачи Граф допустимого дерева LeetCode Решение. Имея ребра графа, проверьте, составляют ли ребра допустимое дерево. Если да, вернуть true и false в противном случае. Ребра задаются в виде двумерного массива размером n*2 Примеры и пояснения Пример 2: Ввод: n = 1, ...

Подробнее

Вопрос 443. Решение литкода Spiral Matrix II Постановка задачи Этот вопрос Спиральная матрица II очень похожа на Спиральную матрицу Пожалуйста, попробуйте ответить на вопрос выше, чтобы лучше понять, прежде чем решать эту задачу. В этом вопросе нас просят сгенерировать матрицу размера n*n, состоящую из элементов в спиральном порядке, и только n...

Подробнее

Вопрос 444. Решение для веб-краулера LeetCode Постановка проблемы Веб-сканер LeetCode Решение. Имея URL-адрес startUrl и интерфейс HtmlParser, внедрите веб-сканер для обхода всех ссылок, находящихся под тем же именем хоста, что и startUrl. Возвращайте все URL-адреса, полученные вашим поисковым роботом, в любом порядке. Ваш сканер должен: Начать со страницы: startUrl Вызовите HtmlParser.getUrls(url), чтобы получить все URL-адреса с веб-страницы ...

Подробнее

Вопрос 445. Одно решение LeetCode для редактирования расстояния Постановка задачи Одно расстояние редактирования LeetCode Решение. Даны две строки s и t, вернуть true, если обе они находятся на расстоянии одного редактирования друг от друга, в противном случае вернуть false. Говорят, что строка s находится на расстоянии одного расстояния от строки t, если вы можете: Вставьте ровно один символ в s, чтобы получить t. Удалите ровно один символ из s, чтобы получить t. Замените ровно один символ s другим символом, чтобы получить t. Вход: ...

Подробнее

Вопрос 446. Возможное двураздельное решение LeetCode Постановка задачи Возможное решение LeetCode для двух разделов. Мы хотим разделить группу из n человек (пронумерованных от 1 до n) на две группы любого размера. Каждому человеку могут не нравиться некоторые другие люди, и они не должны входить в одну группу. Учитывая целое число n и массив dislikes, где dislikes[i] = [ai, bi] указывает, что человек с меткой ai делает ...

Подробнее

Вопрос 447. Важность сотрудника Решение LeetCode Постановка проблемы Важность сотрудника Решение LeetCode. У вас есть структура данных с информацией о сотрудниках, включая уникальный идентификатор сотрудника, значение важности и идентификаторы непосредственных подчиненных. Вам задан массив сотрудников сотрудников, где: employee[i].id — идентификатор i-го сотрудника. employee[i].importance — важная ценность i-го сотрудника. employee[i].subordinates — это список ...

Подробнее

Вопрос 448. Знак произведения массива Решение LeetCode Постановка задачи Знак произведения массива Решение LeetCode. Существует функция signFunc(x), которая возвращает: 1, если x положительно. -1, если x отрицательно. 0, если x равен 0. Вам дан целочисленный массив nums. Пусть продукт будет произведением всех значений в массиве nums. Функция возврата signFunc(продукт). Ввод: nums = [-1,-2,-3,-4,3,2,1] Вывод: 1 Объяснение: Произведение ...

Подробнее

Вопрос 449. Решение LeetCode для завершения процесса Постановка задачи Kill Process LeetCode Решение. У вас есть n процессов, образующих корневую древовидную структуру. Вам даны два целочисленных массива pid и ppid, где pid[i] — идентификатор i-го процесса, а ppid[i] — идентификатор родительского процесса i-го процесса. Каждый процесс имеет только один родительский процесс, но может иметь несколько дочерних процессов. Только один процесс имеет ppid[i] = 0, ...

Подробнее

Вопрос 450. Максимальный продукт разделенного двоичного дерева Решение LeetCode Постановка задачи Максимальное произведение разделенного двоичного дерева Решение LeetCode. Учитывая корень двоичного дерева, разделите двоичное дерево на два поддерева, удалив одно ребро так, чтобы произведение сумм поддеревьев было максимальным. Возвращает максимальное произведение сумм двух поддеревьев. ...

Подробнее

Вопрос 451. Подпоследовательность размера K с наибольшей четной суммой. Решение LeetCode Постановка задачи Подпоследовательность размера K с наибольшей четной суммой Решение LeetCode — «Подпоследовательность размера K с наибольшей четной суммой» утверждает, что задан массив чисел и целое число k, задача здесь состоит в том, чтобы найти наибольшую четную сумму любой подпоследовательности из массив nums, который...

Подробнее

Вопрос 452. Симметричное дерево Решение LeetCode Решение Leetcode Постановка задачи Симметричное дерево Решение LeetCode — «Симметричное дерево» утверждает, что задан корень бинарного дерева, и нам нужно проверить, является ли данное бинарное дерево зеркалом самого себя (симметричным относительно своего центра) или нет? Если да, нам нужно вернуть true, иначе false. Пример: ...

Подробнее

Вопрос 453. Решение LeetCode для счетчика посещений Постановка задачи Разработка счетчика попаданий Решение LeetCode. Разработайте счетчик попаданий, который подсчитывает количество попаданий, полученных за последние 5 минут (т. е. за последние 300 секунд). Ваша система должна принимать параметр метки времени (с точностью до секунд), и вы можете предположить, что вызовы выполняются в системе в хронологическом порядке (т. е. метка времени монотонно увеличивается). ...

Подробнее

Вопрос 454. Минимум переходов к равным элементам массива Решение LeetCode Постановка задачи Минимум ходов для получения равных элементов массива LeetCode Решение. Дан массив целых чисел размера n, вернуть минимальное количество ходов, необходимых для того, чтобы сделать все элементы массива равными. За один ход можно увеличить n - 1 элемент массива на 1. Пример 1: Ввод 1: nums = [1, 2, 3] Вывод: ...

Подробнее

Вопрос 455. Решение для игры Jump Game Постановка задачи Jump Game Leetcode Решение – Вам дан целочисленный массив nums. Изначально вы находитесь в первом индексе массива, и каждый элемент массива представляет максимальную длину прыжка в этой позиции. Верните true, если вы можете добраться до последнего индекса, или false в противном случае. Пример: Ввод 1: nums = [2, ...

Подробнее

Вопрос 456. Связанный список Цикл II Решение LeetCode Постановка задачи. Цикл связанного списка II. LeetCode Решение. Учитывая заголовок связанного списка, вернуть узел, с которого начинается цикл. Если цикла нет, вернуть null. В связанном списке есть цикл, если в списке есть какой-то узел, к которому можно снова добраться, непрерывно...

Подробнее

Вопрос 457. Последовательные символы Решение LeetCode Постановка задачи Последовательные символы LeetCode Решение. Мощность строки — это максимальная длина непустой подстроки, содержащей только один уникальный символ. Учитывая строку s, вернуть мощность s. Ввод: s = "leetcode" Вывод: 2 Объяснение: Подстрока "ee" имеет длину 2 и состоит только из символа "e". Объяснение ...

Подробнее

Вопрос 458. Word Pattern Решение LeetCode Постановка задачи Word Pattern LeetCode Решение. Нам даны 2 строки — «s» и «pattern», нам нужно найти, следует ли шаблон за s. Следующее здесь означает полное совпадение. Формально можно сказать, что для каждого шаблона[i] должен быть только один s[i] и наоборот, т.е.

Подробнее

Вопрос 459. Максимальное произведение трех чисел Решение LeetCode Постановка задачи Максимальное произведение трех чисел Решение LeetCode. Нам дан массив, вопрос просит нас вычислить максимальное произведение любых трех чисел. Примеры Пример 3: Ввод: nums = [1] Вывод: 1,2,3 Пример 6: Ввод: nums = [2] Вывод: 1,2,3,4 Пример 24: Ввод: nums = ...

Подробнее

Вопрос 460. Заголовок столбца листа Excel Решение LeetCode Постановка задачи Название столбца листа Excel LeetCode Решение. Нам дан номер столбца (назовем его colNum), и нам нужно вернуть соответствующий заголовок столбца, как он отображается на листе Excel. Например, A -> 1 B -> 2 C -> 3 … Z -> 26 АА…

Подробнее

Вопрос 461. Допустимое решение Perfect Square LeetCode Постановка задачи Допустимый совершенный квадрат Последующие действия: не используйте никакие встроенные библиотечные функции, такие как sqrt. Ввод: num = 16 Вывод: true Объяснение Граница для нашего решения фиксирована. на любое число...

Подробнее

Вопрос 462. Индекс случайного выбора Решение LeetCode Постановка задачи Индекс случайного выбора LeetCode Решение. Нам дан конструктор класса «Решение» и функция «выбор» типа int. Нам необходимо реализовать класс «Решение» как Solution(int[] nums) Инициализирует объект массивом nums. int pick(int target) Выбирает случайный индекс i из nums, где nums[i] == target. Если их несколько...

Подробнее

Вопрос 463. Найдите два непересекающихся подмассива, каждый с целевой суммой Решение LeetCode Постановка задачи «Найти два непересекающихся подмассива, каждый с целевой суммой». Решение LeetCode — «Найти два непересекающихся подмассива, каждый с целевой суммой» гласит, что вам дан целочисленный массив nums и целочисленная цель, задача здесь найти два непересекающихся подмассива из массива nums такие, что...

Подробнее

Вопрос 464. Стробограмматический номер Решение LeetCode Постановка задачи Стробограмматическое число LeetCode Решение. Дана строка num, представляющая целое число, вернуть true, если num является стробограмматическим числом. Стробограмматическое число — это число, которое выглядит одинаково при повороте на 180 градусов (если смотреть вверх ногами). Пример Контрольный пример 1: Вход: число = «69» Выход: истина Тестовый пример 2: Вход: число = «692» Выход: ложь Объяснение ...

Подробнее

Вопрос 465. Объединить два бинарных дерева Решение LeetCode Постановка задачи Слияние двух бинарных деревьев LeetCode Решение. Вам даны два бинарных дерева root1 и root2. Представьте, что когда вы помещаете одно из них на другое, некоторые узлы двух деревьев перекрываются, а другие нет. Вам нужно объединить два дерева в...

Подробнее

Вопрос 466. Продукт подмассива Меньше, чем K Решение LeetCode Постановка задачи Продукт подмассива меньше K. LeetCode Решение. Дан массив целых чисел nums и целое число k, вернуть количество смежных подмассивов, где произведение всех элементов в подмассиве строго меньше k. Пример теста 1: Ввод: inputArr = [10, 5, 2, 6] k = 100 ...

Подробнее

Вопрос 467. Решение LeetCode для перестановки только букв Постановка задачи Поменяйте местами только буквы LeetCode Решение. Дана строка s, поменяйте местами строку в соответствии со следующими правилами: Все символы, не являющиеся английскими буквами, остаются на прежнем месте. Все английские буквы (строчные или прописные) должны быть перевернуты. Возврат s после его изменения. Ввод: s = "ab-cd" ...

Подробнее

Вопрос 468. Количество дней между двумя датами Решение LeetCode Постановка задачи Вопрос Количество дней между двумя датами Решение LeetCode просит нас рассчитать точное количество дней между двумя заданными датами, включая високосные годы. Даты задаются в виде строк в формате ГГГГ-ММ-ДД. Также дано, что входные даты являются действительными датами между ...

Подробнее

Вопрос 469. Закодированная строка с кратчайшей длиной Решение LeetCode Постановка задачи Закодированная строка с наименьшей длиной LeetCode Решение – Учитывая строку s, закодируйте строку так, чтобы ее закодированная длина была наименьшей. Правило кодирования: k[encoded_string], где encoded_string внутри квадратных скобок повторяется ровно k раз. k должно быть положительным целым числом. Если процесс кодирования не делает ...

Подробнее

Вопрос 470. Решение LeetCode Next Greater Element III Постановка задачи В задаче «Следующий больший элемент III» LeetCode говорится, что вам дано положительное целое число n, и вам нужно найти следующее наибольшее целое число, используя только цифры, присутствующие в n. Если такого целого числа не существует, вам нужно вывести -1. Более того, новый...

Подробнее

Вопрос 471. Изменить расстояние Решение LeetCode Постановка задачи Задача Редактировать расстояние LeetCode Solution утверждает, что вам даны две строки word1 и word2, и вам нужно преобразовать word1 в word2 с минимальными операциями. Операции, которые можно выполнять над строкой: – Вставить символ Удалить символ Заменить символ Примеры Тестовый пример ...

Подробнее

Вопрос 472. Найти все дубликаты в массиве Решение LeetCode Постановка задачи В задаче «Найти все дубликаты в массиве» LeetCode Solution утверждает, что вам дан массив размера n, содержащий элементы в диапазоне [1,n]. Каждое целое число может встречаться один или два раза, и вам нужно найти все элементы, которые встречаются в массиве дважды. Примеры ...

Подробнее

Вопрос 473. Переместить нули Решение LeetCode Постановка задачи Задача, Переместить нули. Решение LeetCode гласит, что вам дан массив, содержащий нулевые и ненулевые элементы, и вам необходимо переместить все нули в конец массива, сохраняя относительный порядок ненулевых элементов в массиве. . Вам также необходимо реализовать на месте...

Подробнее

Вопрос 474. Решение для единого номера литкода Постановка задачи. Одно число. Лит-код. Решение. Нам дан непустой массив целых чисел, и нам нужно найти элемент, который встречается ровно один раз. В вопросе указано, что каждый элемент встречается дважды, кроме одного. Пример 1: Ввод: nums = [2,2,1] Вывод: 1 Пример 2: Ввод: ...

Подробнее

Вопрос 475. Количество провинций Решение Leetcode Постановка задачи. Количество провинций. Лит-код. Решение. Нам дано представление матрицы смежности графа, и нам нужно найти количество провинций. Здесь провинция — это группа прямо или косвенно связанных городов и никаких других городов вне группы. Пример Пример 1: Ввод: isConnected ...

Подробнее

Вопрос 476. 01 Matrix Решение LeetCode Постановка задачи В этой задаче 01 Matrix LeetCode Solution нам нужно найти расстояние до ближайшего 0 для каждой ячейки данной матрицы. Матрица состоит только из 0 и 1, а расстояние между любыми двумя соседними ячейками равно 1. Примеры Пример 1: Ввод: mat = ...

Подробнее

Вопрос 477. Сортировка символов по частоте Решение LeetCode Постановка задачи Сортировка символов по частоте LeetCode Решение. Дана строка S, отсортируйте ее в порядке убывания частоты символов. Частота символа — это количество раз, которое он появляется в строке. Вернуть отсортированную строку. Если ответов несколько, верните любой из них. Пример сортировки символов по...

Подробнее

Вопрос 478. Максимальное значение по заданному индексу в решении LeetCode с ограниченным массивом Постановка задачи Задача Максимальное значение заданного индекса в ограниченном массиве Решение LeetCode гласит: Вам даны три положительных целых числа: n, индекс и maxSum. Вы хотите построить массив nums(0-indexed), удовлетворяющий следующим условиям: nums.length == n nums[i] — положительное целое число, где 0 <= i < n. ...

Подробнее

Вопрос 479. Решение LeetCode для неубывающего массива Постановка задачи. Неубывающий массив. Решение LeetCode. Дан массив nums с n целыми числами. Ваша задача — проверить, может ли он стать неубывающим, изменив не более одного элемента. Мы определяем массив как неубывающий, если nums[index] <= nums[index +1] выполняется для каждого индекса (отсчитываемого от 0), такого что (0 <= index <= n-2). ...

Подробнее

Вопрос 480. Самая длинная подстрока с не более чем K различными символами Решение LeetCode Постановка задачи Самая длинная подстрока с не более чем K различными символами Решение LeetCode. Для заданной строки S и целого числа K вернуть длину самой длинной подстроки S, содержащей не более K различных символов. Пример: Контрольный пример 1: Вход: S = «bacc» K = 2 Выход: 3 Контрольный пример 2: Вход: S = «ab» ...

Подробнее

Вопрос 481. Факториал с замыкающими нулями Решение LeetCode Постановка задачи Факториал нулей в конце LeetCode Решение – Учитывая целое число n, вернуть количество нулей в конце числа n!. Обратите внимание, что н! = n * (n - 1) * (n - 2) * ... * 3 * 2 * 1. Ввод: n = 3 Вывод: 0 Объяснение: 3! = 6, без трейлинга...

Подробнее

Вопрос 482. Преобразование отсортированного массива в двоичное дерево поиска LeetCode Solutions Постановка задачи Преобразование отсортированного массива в двоичное дерево поиска Компания LeetCode Solutions сообщает, что задан целочисленный массив nums, в котором элементы отсортированы в порядке возрастания, преобразовать его в двоичное дерево поиска со сбалансированной высотой. Сбалансированное по высоте бинарное дерево — это бинарное дерево, в котором глубина двух поддеревьев каждого узла никогда не отличается более чем...

Подробнее

Вопрос 483. Word Ladder Решение LeetCode Постановка задачи Лестница слов Решение LeetCode. «Лестница слов» утверждает, что вам дана строка beginWord, строка endWord и список слов. Нам нужно найти кратчайшую длину последовательности преобразований (если путь не существует, выведите 0) из beginWord в endWord, следуя заданным условиям: Все промежуточные слова должны ...

Подробнее

Вопрос 484. Лучшее решение LeetCode для места встречи Постановка задачи Лучшее место встречи Решение LeetCode гласит: Учитывая бинарную сетку размером mxn, где каждый 1 определяет дом одного друга, мы хотим вернуть минимальное общее расстояние пути, где общее расстояние пути равно сумме расстояний между домами. из ...

Подробнее

Вопрос 485. Самая длинная подстрока с не менее чем K повторяющимися символами Решение LeetCode Постановка задачи Задача Самая длинная подстрока с не менее чем K повторяющимися символами Решение LeetCode гласит, что для заданной строки S и целого числа k необходимо вернуть длину самой длинной подстроки S так, чтобы частота каждого символа в этой подстроке была больше или равна k . Пример самой длинной подстроки, по крайней мере...

Подробнее

Вопрос 486. Решение LeetCode из того же дерева Постановка задачи Задача Одно и то же дерево гласит. Имея корни двух бинарных деревьев p и q, напишите функцию, проверяющую, совпадают ли они или нет. Два бинарных дерева считаются одинаковыми, если они структурно идентичны, а узлы имеют одинаковое значение. Пример: тестовый случай...

Подробнее

Вопрос 487. Решение LeetCode для спиральной матрицы Постановка задачи Спиральная матрица Задача гласит: В спиральной матрице мы хотим напечатать все элементы матрицы в форме спирали по часовой стрелке. Подход к спиральной матрице: идея Задачу можно решить, разделив матрицу на циклы и распечатав все элементы в каждом...

Подробнее

Вопрос 488. Удалить дубликаты из решения Leetcode для отсортированного массива Постановка задачи. Решение Leetcode для удаления дубликатов из отсортированного массива. Говорит, что вам дан целочисленный массив, отсортированный в неубывающем порядке. Нам нужно удалить все повторяющиеся элементы и изменить исходный массив так, чтобы относительный порядок отдельных элементов оставался прежним, и сообщить значение...

Подробнее

Вопрос 489. Решение LeetCode для крупнейшего поддерева BST Постановка задачи Самое большое поддерево BST Решение LeetCode гласит, что для корня двоичного дерева необходимо найти самое большое поддерево, которое также является двоичным деревом поиска (BST), где самое большое означает поддерево, имеющее наибольшее количество узлов. Примечание. Поддерево должно включать всех своих потомков. В бинарнике...

Подробнее

Вопрос 490. Сортировка массива по четности Решение LeetCode Постановка задачи Сортировка массива по четности Решение LeetCode — «Сортировка массива по четности» утверждает, что вам дан массив целых чисел, переместите все четные целые числа в начало массива, за которыми следуют все нечетные целые числа. Примечание. Возвратите любой массив, удовлетворяющий этому условию. Пример: Вход: Выход: ...

Подробнее

Вопрос 491. Удалить N-й узел из конца списка Решение Leetcode Постановка задачи Решение «Удалить N-й узел из конца списка» Leetcode — утверждает, что вам дан заголовок связанного списка, и вам нужно удалить n-й узел из конца этого списка. После удаления этого узла верните заголовок измененного списка. Пример: Ввод: ...

Подробнее

Вопрос 492. Переключатель ламп LeetCode Solution Постановка проблемы Переключатель лампочек LeetCode Решение – изначально выключено n лампочек. Вы сначала включаете все лампочки, затем выключаете каждую вторую лампочку. В третьем раунде вы включаете каждую третью лампочку (включается, если она выключена, или выключается, если она включена). В i-м раунде вы...

Подробнее

Вопрос 493. Конференц-залы II Решение LeetCode Постановка проблемы Решение LeetCode для конференц-залов II. В «Конференц-залах II» указано, что вам дан массив временных интервалов «интервалов» для собраний, где «интервалы [i] = [начало [i], конец [i]]», возвращайте требуется минимальное количество конференц-залов. Пример: интервалы = [[0,30],[5,10],[15,20]] 2 Объяснение: Встретиться с одним можно...

Подробнее

Вопрос 494. Решение LeetCode с самой длинной палиндромной подстрокой Постановка задачи Самая длинная палиндромная подстрока Решение LeetCode — «Самая длинная палиндромная подстрока» утверждает, что вам дана строка s, верните самую длинную палиндромную подстроку в s. Примечание. Палиндром — это слово, которое читается так же, как и вперед, и назад, например, мадам. Пример: s = "babad" "bab" Объяснение: Все...

Подробнее

Вопрос 495. Лучшее время для покупки и продажи решения LeetCode для акций Постановка задачи Лучшее время для покупки и продажи акций Решение LeetCode — «Лучшее время для покупки и продажи акций» утверждает, что вам дан массив цен, где цены[i] — это цена данной акции в i-й день. Вы хотите максимизировать свою прибыль, выбрав ...

Подробнее

Вопрос 496. Медиана решения LeetCode для двух отсортированных массивов Постановка задачи Медиана двух отсортированных массивов Решение LeetCode. В задаче «Медиана двух отсортированных массивов» нам даны два отсортированных массива nums1 и nums2 размера m и n соответственно, и мы должны вернуть медиану двух отсортированных массивов. Общая сложность времени выполнения должна быть O(log (m+n)). Пример nums1 = [1,3], ...

Подробнее

Вопрос 497. Количество островов Решение LeetCode Постановка задачи Количество островов Решение LeetCode — «Количество островов» указывает, что вам дана двухмерная двоичная сетка mxn, которая представляет собой карту из единиц (суша) и нулей (вода), вы должны вернуть количество островов. Остров окружен водой и...

Подробнее

Вопрос 498. Решение LRU Cache LeetCode Вопрос Разработайте структуру данных, которая соответствует ограничениям кэша наименее использовавшегося (LRU) кэша. Реализуйте класс LRUCache: LRUCache(int capacity) Инициализируйте кэш LRU с положительной емкостью. int get(int key) Возвращает значение ключа, если ключ существует, иначе возвращает -1. void put(int key, int value) Обновить значение ключа, если он существует. В противном случае добавьте пару ключ-значение в...

Подробнее

Вопрос 499. K-й самый большой элемент в решении Stream Leetcode Постановка задачи В этой задаче мы должны разработать класс KthLargest (), который изначально имеет целое число k и массив целых чисел. Нам нужно написать параметризованный конструктор для него, когда в качестве аргументов передаются целое число k и номера массивов. В классе также есть функция add (val), которая добавляет ...

Подробнее

Вопрос 500. Удаление элементов связанного списка Leetcode Solution Постановка задачи В этой задаче нам дается связанный список, узлы которого имеют целочисленные значения. Нам нужно удалить из списка несколько узлов, значение которых равно val. Проблема не требует решения на месте, но мы обсудим один из таких подходов. Пример списка = ...

Подробнее

Вопрос 501. Минимум переходов к равным элементам массива Решение Leetcode Постановка задачи В этой задаче нам дан массив целых чисел. Также нам разрешено выполнять определенный набор операций с этим массивом. За одну операцию мы можем увеличить «n - 1 ″ (все элементы, кроме любого одного) в массиве на 1. Нам нужно ...

Подробнее

Вопрос 502. Подсчет хороших узлов в решении Leetcode для двоичного дерева Постановка задачи В этой задаче дается двоичное дерево с его корнем. Узел X в дереве называется хорошим, если на пути от корня до X нет узлов со значением больше X. Мы должны вернуть количество хороших узлов в ...

Подробнее

Вопрос 503. Номер столбца листа Excel Решение Leetcode Постановка проблемы. В этой задаче нам дается заголовок столбца, как показано на листе Excel, мы должны вернуть номер столбца, который соответствует этому заголовку столбца в Excel, как показано ниже. Пример # 1 "AB" 28 # 2 "ZY" 701 Подход Чтобы найти номер столбца для конкретного ...

Подробнее

Вопрос 504. Количество шагов по сокращению числа до решения с нулевым кодом Leetcode Задача «Число шагов для уменьшения числа до нуля» Leetcode Решение утверждает, что задано целое число. Найдите минимальное количество шагов для преобразования данного целого числа в 0. Вы можете выполнить любой из двух шагов: либо вычесть 1, либо разделить целое число на 2. Проблема ...

Подробнее

Вопрос 505. Комбинации Leetcode Solution Комбинации задач Leetcode Solution предоставляет нам два целых числа, n и k. Нам говорят сгенерировать все последовательности, у которых есть k элементов, выбранных из n элементов от 1 до n. Мы возвращаем эти последовательности в виде массива. Давайте рассмотрим несколько примеров, чтобы понять ...

Подробнее

Вопрос 506. Драгоценности и камни Leetcode Solution В решении Leetcode «Драгоценности и камни» говорится, что вам даны две строки. Один из них представляет собой драгоценности, а другой - камни. Строка, содержащая драгоценности, представляет символы, которые являются драгоценностями. Нам нужно найти количество символов в строке камней, которые ...

Подробнее

Вопрос 507. Подсчет нечетных чисел в решении Leetcode диапазона интервалов Постановка задачи В этой задаче даны два неотрицательных целых числа low и high. Нам нужно найти, сколько нечетных чисел находится в заданном диапазоне интервала [low, high]. Пример low = 3, high = 7 3 Объяснение: Нечетные числа от 3 до 7 ...

Подробнее

Вопрос 508. Решение Leetcode для большинства элементов Постановка задачи. Нам дан массив целых чисел. Нам нужно вернуть целое число, которое встречается в массиве более N / 2⌋ раз, где ⌊ ⌋ - оператор пола. Этот элемент называется мажоритарным элементом. Обратите внимание, что входной массив всегда содержит элемент большинства. ...

Подробнее

Вопрос 509. Преобразование числа в решение Leetcode в шестнадцатеричном формате Проблема преобразования числа в шестнадцатеричный код Leetcode Решение предоставляет нам целое число. Затем просит нас преобразовать данное целое число из десятичной системы счисления в шестнадцатеричную систему счисления. Более формально вопрос требует, чтобы мы преобразовали целое число, данное в базе 10, в представление по базе 16. Мы ...

Подробнее

Вопрос 510. Решение Leetcode для связанного списка Palindrome В задаче «Связанный список палиндрома» мы должны проверить, является ли данный связанный с одним целым числом связанный список палиндромом или нет. Пример List = {1 -> 2 -> 3 -> 2 -> 1} true. Объяснение # 1: Список является палиндромом, поскольку все элементы с начала и до конца ...

Подробнее

Вопрос 511. Максимальная глубина решения Leetcode для двоичного дерева Постановка задачи. В задаче дано двоичное дерево, и мы должны определить максимальную глубину данного дерева. Максимальная глубина двоичного дерева - это количество узлов на самом длинном пути от корневого узла до самого дальнего листового узла. Пример 3 / ...

Подробнее

Вопрос 512. Максимальная глубина решения Leetcode N-арного дерева В этой задаче нам дано N-арное дерево, то есть дерево, которое позволяет узлам иметь более двух дочерних элементов. Нам нужно найти глубину листа, наиболее удаленного от корня дерева. Это называется максимальной глубиной. Обратите внимание, что глубина пути ...

Подробнее

Вопрос 513. Решение Leetcode для поворота списка Задача «Повернуть список» Leetcode Solution предоставляет нам связанный список и целое число. Нам предлагается повернуть связанный список вправо на k мест. Итак, если мы повернем связанный список на k мест вправо, на каждом шаге мы будем брать последний элемент из ...

Подробнее

Вопрос 514. Pow (x, n) Решение Leetcode В задаче «Pow (x, n) Leetcode Solution» указано, что вам даны два числа, одно из которых является числом с плавающей запятой, а другое - целым. Целое число обозначает показатель степени, а основание - число с плавающей запятой. Нам говорят найти значение после оценки степени по основанию. ...

Подробнее

Вопрос 515. Вставить в двоичное дерево поиска Решение Leetcode В этой задаче нам дается корневой узел дерева двоичного поиска, содержащий целочисленные значения и целочисленное значение узла, который мы должны добавить в дерево двоичного поиска и вернуть его структуру. После вставки элемента в BST мы должны распечатать его ...

Подробнее

Вопрос 516. Объединить два отсортированных списка Решения Leetcode Связанные списки очень похожи на массивы по своим линейным свойствам. Мы можем объединить два отсортированных массива, чтобы сформировать общий отсортированный массив. В этой проблеме мы должны объединить два отсортированных связанных списка на месте, чтобы вернуть новый список, который содержит элементы обоих списков в отсортированном виде. Пример ...

Подробнее

Вопрос 517. Решение Leetcode с перестановками Задача Permutations Leetcode Solution предоставляет простую последовательность целых чисел и просит нас вернуть полный вектор или массив всех перестановок данной последовательности. Итак, прежде чем приступить к решению проблемы. Мы должны быть знакомы с перестановками. Итак, перестановка - это не что иное, как расположение ...

Подробнее

Вопрос 518. Решение Leetcode с двумя суммами В этой задаче мы должны найти пару из двух отдельных индексов в отсортированном массиве, значения которых складываются в заданную цель. Мы можем предположить, что в массиве есть только одна пара целых чисел, которые в сумме составляют целевую сумму. Обратите внимание, что массив ...

Подробнее

Вопрос 519. Подсчет простых чисел Решения Leetcode В этой задаче нам дано целое число N. Цель состоит в том, чтобы подсчитать, насколько числа меньше N являются простыми числами. Целое число может быть неотрицательным. Пример 7 3 10 4 Объяснение Простые числа меньше 10 - это 2, 3, 5 и 7. Итак, счет равен 4. Подход (Brute ...

Подробнее

Вопрос 520. Решение Leetcode для House Robber II В задаче «House Robber II» грабитель хочет украсть деньги из разных домов. Количество денег в домах представлено в виде массива. Нам нужно найти максимальную сумму денег, которую можно заработать, добавив элементы в данный массив в соответствии с ...

Подробнее

Вопрос 521. Sqrt (x) Решение Leetcode Как сказано в названии, нам нужно найти квадратный корень числа. Допустим, это число x, тогда Sqrt (x) - это такое число, что Sqrt (x) * Sqrt (x) = x. Если квадратный корень числа представляет собой десятичное значение, то мы должны вернуть минимальное значение ...

Подробнее

Вопрос 522. Преобразование отсортированного массива в решение Leetcode для двоичного дерева поиска Представьте, что нам дан отсортированный массив целых чисел. Цель состоит в том, чтобы построить дерево двоичного поиска из этого массива, чтобы дерево было сбалансировано по высоте. Обратите внимание, что дерево называется сбалансированным по высоте, если разница в высоте левого и правого поддеревьев любого узла в ...

Подробнее

Вопрос 523. Раствор Leetcode для бутылок с водой Постановка задачи В задаче «Бутылки для воды» нам даны два значения, а именно «numBottle», в котором будет храниться общее количество полных бутылок с водой, и «numExchange», в котором будет храниться общее количество пустых бутылок из-под воды, которые мы можем обменять за раз и получить полная бутылка с водой. После ...

Подробнее

Вопрос 524. Поменять местами узлы в парах решений Leetcode Цель этой проблемы - попарно поменять местами узлы данного связанного списка, то есть поменять местами каждые два соседних узла. Если нам разрешено менять местами только значения узлов списка, проблема будет тривиальной. Итак, нам не разрешено изменять узел ...

Подробнее

Вопрос 525. Решение Leetcode для домашнего грабителя Постановка задачи В этой задаче на улице есть дома, и грабитель должен ограбить эти дома. Но проблема в том, что он не может грабить более одного дома подряд, то есть соседних друг с другом. Учитывая список неотрицательных целых чисел, представляющих сумму денег ...

Подробнее

Вопрос 526. Действительные анаграммы В задаче «Действительные анаграммы» мы дали две строки str1 и str2. Выясните, являются ли обе струны анаграммами или нет. Если это анаграммы, верните истину, иначе верните ложь. Пример ввода: str1 = «abcbac» str2 = «aabbcc» Вывод: true Объяснение: Поскольку str2 может быть сформирован путем перестановки ...

Подробнее

Вопрос 527. Объединение и пересечение двух связанных списков Учитывая два связанных списка, создайте еще два связанных списка, чтобы получить объединение и пересечение элементов существующих списков. Пример ввода: List1: 5 → 9 → 10 → 12 → 14 List2: 3 → 5 → 9 → 14 → 21 Вывод: Intersection_list: 14 → 9 → 5 Union_list: ...

Подробнее

Вопрос 528. Планирование с циклическим перебором Планирование Round Robin очень похоже на FCFS. Единственная разница между планированием RR и FCFS состоит в том, что RR - это планирование с приоритетом, тогда как FCFS - это планирование без прерывания. Каждый процесс выделяется ЦП в очереди готовности для одного временного интервала. Здесь очередь готовности похожа на ...

Подробнее

Вопрос 529. Подсчитайте способы добраться до n-й ступеньки, используя шаги 1, 2 или 3. Задача «Подсчитайте способы добраться до n-й ступеньки, используя шаги 1, 2 или 3» означает, что вы стоите на земле. Теперь вам нужно добраться до конца лестницы. Итак, сколько существует способов добраться до конца, если вы можете прыгнуть только 1, 2, ...

Подробнее

Вопрос 530. Напишите функцию для получения точки пересечения двух связанных списков Постановка задачи Задача «Напишите функцию для получения точки пересечения двух связанных списков» утверждает, что вам даны два связанных списка. Но это не независимые связанные списки. В какой-то момент они связаны. Теперь вам нужно найти точку пересечения этих двух списков. ...

Подробнее

Вопрос 531. Резка стержня Постановка задачи Задача «Резка стержня» заключается в том, что вам предоставляется стержень определенной длины и цены на стержни всех размеров, которые меньше или равны введенной длине. То есть мы знаем цену на стержни длиной от 1 до n, учитывая ...

Подробнее

Вопрос 532. Проверить, перекрываются ли какие-либо два интервала среди заданного набора интервалов. Постановка проблемы Задача «Проверить, перекрываются ли какие-либо два интервала среди заданного набора интервалов» утверждает, что вам дан некоторый набор интервалов. Каждый интервал состоит из двух значений: одно - время начала, а другое - время окончания. В постановке задачи предлагается проверить, есть ли ...

Подробнее

Вопрос 533. Номер палиндрома Постановка задачи. В задаче «Число палиндрома» указано, что вам дано целое число. Проверьте, палиндром это или нет. Решите эту проблему, не преобразовывая заданное число в строку. Пример 12321 true Объяснение 12321 - это число палиндрома, потому что, когда мы перевернем 12321, оно дает 12321 ...

Подробнее

Вопрос 534. Алгоритмы замены страниц в операционных системах Что такое замена страницы? Современные операционные системы используют подкачку для управления памятью, и во многих случаях возникает необходимость в замене страницы. Замена страницы - это процесс замены страницы, которая в настоящее время присутствует в памяти, на страницу, которая необходима, но отсутствует в ...

Подробнее

Вопрос 535. Программа с кукушкой Статус проблемы Программа с кукушкой или Хеширование с кукушкой - это метод, используемый для решения проблемы, когда возникает коллизия в хэш-таблице. Вероятны столкновения двух хэш-значений хеш-функции в таблице. Конфликт возникает, когда возникают два хеш-значения для одного и того же ключа ...

Подробнее

Вопрос 536. Проблема с логическими скобками Постановка задачи «Задача булевых скобок» утверждает, что нам дана последовательность истинно и ложно, а также некоторые логические операторы (И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ) между ними. Нам нужно найти количество способов заключить данную последовательность в скобки так, чтобы вся последовательность приводила к ИСТИННО. В ...

Подробнее

Вопрос 537. Подсчитайте пары из двух связанных списков, сумма которых равна заданному значению Постановка задачи Задача «Подсчитать пары из двух связанных списков, сумма которых равна заданному значению» означает, что вам даны два связанных списка и сумма целых значений. В постановке задачи просили узнать, сколько всего пар имеет сумму, равную заданному значению. Пример ...

Подробнее

Вопрос 538. Проблема с переносом слов Постановка задачи Задача переноса слов гласит, что, учитывая последовательность слов в качестве входных данных, нам нужно найти количество слов, которые могут быть помещены в одну строку за раз. Итак, для этого мы помещаем разрывы в заданной последовательности так, чтобы распечатанный документ ...

Подробнее

Вопрос 539. Найдите количество сотрудников под каждым сотрудником HashMaps - одна из самых полезных структур данных. Найти количество сотрудников под каждым сотрудником - проблема, которая напоминает мне о создании знаменитого фильма. Сродни сновидению во сне. Здесь у нас есть сотрудник, который работает под началом сотрудника и так далее. Постановка проблемы Итак, что ...

Подробнее

Вопрос 540. Самая длинная возрастающая подпоследовательность Нам предоставляется несортированный массив целых чисел, и мы должны найти самую длинную возрастающую подпоследовательность. Подпоследовательность не обязательно должна быть последовательной. Подпоследовательность должна увеличиваться. Давайте лучше поймем это на нескольких примерах. Пример ввода [9, 2, 5, 3, 7, 10, 8] Выход 4 ...

Подробнее

Вопрос 541. K-й отдельный элемент в массиве Вам дан целочисленный массив A, выведите k-й отдельный элемент в массиве. Данный массив может содержать дубликаты, и на выходе должен быть напечатан k-й отдельный элемент среди всех уникальных элементов в массиве. Если k больше, чем количество различных элементов, сообщите об этом. Пример ввода: ...

Подробнее

Вопрос 542. Поменять местами узлы в парах В задаче обмена узлами в парах мы дали связанный список, состоящий из n узлов. Поменять местами каждый узел с четным индексом на его правый соседний узел с нечетным индексом (), учитывая индекс, начинающийся с 0. Пример ввода: 1-> 2-> 3-> 4-> NULL Выход: 2-> 1-> 4-> 3-> NULL Вход: 1-> 2-> 3-> 4-> 5-> 6-> 7-> NULL Выход: 2-> 1-> 4-> 3-> 6-> 5-> 7- > NULL Алгоритм итеративного метода Создать ...

Подробнее

Вопрос 543. Перестановки Leetcode В этой предварительной постановке задачи leetcode мы дали массив различных целых чисел, вывести все его возможные перестановки. Примеры Вход arr [] = {1, 2, 3} Выход 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 Вход arr [] = {1, 2, ...

Подробнее

Вопрос 544. Судоку Решатель В задаче для решения судоку мы дали частично заполненную (9 x 9) судоку, напишите программу, чтобы завершить головоломку. Судоку должно удовлетворять следующим свойствам. Каждое число (1–9) должно появляться ровно один раз в строке и один раз в столбце. Каждое число (1-9) должно появляться ровно один раз в ...

Подробнее

Вопрос 545. Объединить K отсортированных связанных списков Проблема слияния K отсортированных связанных списков так известна с точки зрения собеседований. Этот вопрос так часто задают в крупных компаниях, таких как Google, Microsoft, Amazon и т. Д. Как следует из названия, нам предоставили k отсортированных связанных списков. Мы должны объединить их в ...

Подробнее

Вопрос 546. Объединить два отсортированных связанных списка При слиянии двух отсортированных связанных списков мы дали указатель на заголовок двух связанных списков, объедините их так, чтобы получился один связанный список, в котором есть узлы со значениями в отсортированном порядке. вернуть указатель заголовка объединенного связанного списка. Примечание: объедините связанный список на месте без использования ...

Подробнее

Вопрос 547. Найти медиану из потока данных В задаче «Найти медиану из потока данных» мы указали, что целые числа считываются из потока данных. Найдите медиану всех прочитанных элементов, начиная с первого целого числа до последнего целого числа. Пример ввода 1: stream [] = {3,10,5,20,7,6} Вывод: 3 6.5 ...

Подробнее

Вопрос 548. Дом грабитель Задача о грабеже домов гласит, что в одном районе города есть один ряд из n домов. Вор планирует совершить ограбление в этом районе. Он знает, сколько золота спрятано в каждом из домов. Однако, чтобы избежать срабатывания ...

Подробнее

Вопрос 549. Слово разрыв Word Break - это проблема, которая прекрасно иллюстрирует совершенно новую концепцию. Все мы слышали о сложных словах. Слова состоят из более чем двух слов. Сегодня у нас есть список слов, и все, что нам нужно сделать, это проверить, все ли слова из словаря могут ...

Подробнее

Вопрос 550. Объединить два отсортированных списка Leetcode В чем проблема слияния двух отсортированных списков в leetcode? Это настолько интересный вопрос, который так часто задают в таких компаниях, как Amazon, Oracle, Microsoft и т. Д. В этой задаче (Leetcode слияния двух отсортированных списков) мы дали два связанных списка. Оба связанных списка расположены в порядке возрастания. Объединить оба связанных списка в ...

Подробнее

Вопрос 551. Обратные узлы в K-Group Проблема В обратных узлах в задаче K-Group мы дали связанный список, переверните связанный список в группе из k и верните измененный список. Если количество узлов не кратно k, поменяйте местами оставшиеся узлы. Значение k всегда меньше или равно ...

Подробнее

Вопрос 552. Реализация LRU Cache Кэш наименее недавно использованных (LRU) - это тип метода, который используется для хранения данных таким образом, чтобы время, необходимое для использования данных, было минимально возможным. Алгоритм LRU, используемый при заполнении кеша. Удаляем наименее использованные данные из кеш-памяти ...

Подробнее

Вопрос 553. Сортировка слиянием Что такое сортировка слиянием? Сортировка слиянием - это рекурсивная процедура. Это также алгоритм «разделяй и властвуй». Теперь нам нужно знать, что такое алгоритм «разделяй и властвуй»? Это тип процедуры, в которой мы разделяем проблему на подзадачи и разделяем их, пока не найдем самую короткую ...

Подробнее

Вопрос 554. Действительный судоку Действительный судоку - это задача, в которой мы дали доску судоку 9 * 9. Нам нужно определить, является ли данное судоку действительным или нет, исходя из следующих правил: Каждая строка должна содержать цифры 1-9 без повторения. Каждый столбец должен содержать цифры 1–9 без повторения. Каждый из 9 суббоксов 3x3 ...

Подробнее

Вопрос 555. Сложите два числа Сложение двух чисел - это проблема, в которой мы дали два непустых связанных списка, представляющих неотрицательное целое число. Цифры хранятся в обратном порядке, и каждый узел должен содержать только одну цифру. Сложите два числа и распечатайте результат, используя связанный список. Формат ввода ...

Подробнее

Вопрос 556. Сито Эратосфена Сито Эратосфена - это алгоритм, в котором мы находим простые числа меньше N. Здесь N - целое число. Это эффективный метод определения предела простых чисел. С его помощью мы можем узнать простые числа до 10000000 XNUMX XNUMX. Здесь ...

Подробнее

Вопрос 557. N проблема королевы Задача N queen с использованием концепции Backtracking. Здесь мы размещаем ферзя так, чтобы ни один ферзь не находился в состоянии атаки. Условие атаки ферзей: если два ферзя находятся в одном столбце, ряду и диагонали, то они атакованы. Посмотрим на рисунок ниже. Здесь ...

Подробнее

Вопрос 558. Сериализация и десериализация двоичного дерева Мы дали двоичное дерево, содержащее N узлов, каждый из которых имеет какое-то значение. Нам нужно сериализовать и десериализовать двоичное дерево. Сериализация Процесс сохранения дерева в файле без нарушения его структуры называется сериализацией. DeserializeSerialize и десериализация двоичного дерева Процесс ...

Подробнее

Вопрос 559. Перевернуть связанный список Постановка проблемы Задача «перевернуть связанный список» гласит, что нам дается заголовок связанного списка. Мы должны перевернуть связанный список, изменив связи между ними и вернув заголовок перевернутого связанного списка. Пример 10-> 20-> 30-> 40-> NULL NULL <-10 <-20 <-30 <-40 Объяснение Мы перевернули связанные ...

Подробнее

Вопрос 560. Найти пару с заданной разницей Постановка задачи. Найдите в данном несортированном массиве пару элементов с заданной разностью n. Пример Входные данные arr [] = {120, 30, 70, 20, 5, 6}, разность (n) = 40 Выходные данные [30, 70] Пояснение Здесь разница 30 и 70 равна значению ...

Подробнее

Вопрос 561. Вставить узел в отсортированный связанный список Постановка задачи В задаче «Вставить узел в отсортированный связанный список» мы предоставили связанный список. Вставьте новый узел в отсортированный связанный список в отсортированном виде. После вставки узла в отсортированный связанный список окончательный связанный список должен быть отсортированным связанным списком. ...

Подробнее

Вопрос 562. Обнаружить петлю в связанном списке Постановка задачи В задаче «Обнаружить петлю в связанном списке» мы предоставили связанный список. Определите, есть ли петля. Если в связанном списке есть цикл, то какой-то узел в связанном списке будет указывать на один из предыдущих узлов ...

Подробнее

Translate »