Публикации по теме 'leetcode'
Google/Amazon/Microsoft Вопрос интервью — LeetCode 1146
В этом посте мы собираемся обсудить leetcode 1146 — Snapshot Array , который задают в интервью Google, Amazon и Microsoft.
Анализ проблемы
Реализуйте SnapshotArray, поддерживающий следующий интерфейс:
SnapshotArray(int length) инициализирует подобную массиву структуру данных заданной длины. Изначально каждый элемент равен 0 .
void set(index, val) устанавливает элемент в заданном index равным val .
Почему шлифовальный литкод не сломан
В последнее время было много дискуссий о том, что «шлифовка» leetcode — не лучший способ стать лучшим программистом и пустая трата времени. Кажется, многие люди считают, что если вы сосредоточите все свои усилия на практических приложениях и избежите изучения вопросов структуры данных и алгоритмов (DSA), вы станете таким же компетентным программистом. Хотя я не считаю, что большую часть времени следует тратить на шлифовку leetcode, я считаю, что вопросы DSA приносят огромную пользу и..
Google / Amazon Вопрос интервью — LeetCode 1170
В этом посте мы собираемся обсудить leetcode 1170 — сравнение строк по частоте наименьшего символа, который задают в интервью Google и Amazon.
Анализ проблемы
Пусть функция f(s) будет частотой лексикографически наименьшего символа в непустой строке s . Например, если s = "dcce" , то f(s) = 2 , потому что лексикографически наименьший символ — 'c' , частота которого равна 2.
Вам дан массив строк words и еще один массив строк запроса …
LeetCode - преобразование зигзага
Описание проблемы
Строка «PAYPALISHIRING» написана зигзагообразным узором на заданном количестве строк следующим образом: (вы можете отобразить этот узор фиксированным шрифтом для лучшей читаемости)
P A H N
A P L S I I G
Y I R
А затем прочтите построчно: «PAHNAPLSIIGYIR»
Напишите код, который будет принимать строку и выполнять это преобразование с учетом количества строк:
string convert(string s, int numRows);
Описание проблемы взято из:..
LeetCode 1800. Максимальный восходящий подмассив — Python Solution
Blind 75 — Вопросы по программированию и техническому интервью — серия объяснений
Проблема:
Учитывая массив положительных целых чисел nums , вернуть максимально возможную сумму возрастающего подмассива в nums .
Подмассив определяется как непрерывная последовательность чисел в массиве.
Подмассив [nums[l], nums[l+1], …, nums[r-1], nums[r] является возрастающим, если для всех i где l ‹= i ‹ r , nums[i] ‹ nums[i+1 ] . Обратите внимание, что подмассив размера 1..
LeetCode — Комбинации
Постановка задачи
Имея два целых числа n и k , вернуть все возможные комбинации k чисел из диапазона [1, n] .
Вы можете вернуть ответ в любом порядке .
Постановка задачи взята с: https://leetcode.com/problems/combinations/ .
Пример 1:
Input: n = 4, k = 2
Output:
[
[2, 4],
[3, 4],
[2, 3],
[1, 2],
[1, 3],
[1, 4],
]
Пример 2:
Input: n = 1, k = 1
Output: [[1]]
Ограничения:
- 1 <= n <= 20
- 1 <= k <= n
Объяснение
Решение грубой силы..
Преобразование строки в целое число (atoi)
Вопрос:
Реализуйте atoi , который преобразует строку в целое число.
Сначала функция отбрасывает столько пробельных символов, сколько необходимо, пока не будет найден первый непробельный символ. Затем, начиная с этого символа, принимает необязательный начальный знак плюс или минус, за которым следует как можно больше числовых цифр, и интерпретирует их как числовое значение.
Строка может содержать дополнительные символы после тех, которые образуют целое число, которые игнорируются и..