Публикации по теме 'data-structures'


Подсчитайте количество островов в матрице
Это популярный вопрос о кодировании, который задают многие компании. Описание: Учитывая двумерную сетку с 1 (суша) и 0 (вода), подсчитайте количество островов. Остров окружен водой и образован путем соединения соседних земель по горизонтали или вертикали. Вы можете предположить, что все четыре края сетки окружены водой. Пример: В этом примере у нас есть три отдельных острова, как показано ниже. На первый взгляд, мы можем просто перебирать матрицу, пока не встретим..

Подведение итогов к числу листьев в двоичном дереве
Задача средней сложности от Leetcode Суммирование корневых и конечных чисел - интересная задача от Leetcode . Задача средней сложности и касается бинарных деревьев. Этот пост - объяснение решения проблемы. Я предполагаю, что вы знакомы с Python и концепцией двоичных деревьев. Если нет, для начала прочтите эту статью . Проблема Для двоичного дерева, узлы которого содержат значения 0-9 , мы должны найти сумму всех чисел, образованных путями от корня к листу. Лист - это узел,..

Stripe Interview Question: Наименьшее пропущенное положительное целое число
Будьте готовы, если вы проходите собеседование в Stripe Ужасное собеседование по программированию на доске. Мы все это ненавидим, но все должны признать это. Для компаний стало стандартом проверять навыки программирования, особенно для младших и средних должностей. Итак, давайте отточим наши навыки и попробуем сегодня. Проведя время в нескольких разных странах, я создал крепкую сеть друзей, занимающихся программным обеспечением, в Лондоне, Нью-Дели, Сан-Франциско, Чикаго,..

Мой двукратный опыт работы с Google Foobar
Как я выступил на Google Foobar Challenge, Twice! Foobar «считается» секретной задачей Google при приеме на работу, и это действительно захватывающе. Это вызов только по приглашению, поэтому «вы должны быть выбраны». На картинке выше показано, как я получил свое приглашение. В этой статье я поделюсь своим опытом решения задачи foobar. Я расскажу об уровнях и расскажу, чего можно ожидать от этой задачи. Обратите внимание: я не буду делиться ни одним из вопросов или решений в..

Нахождение веса пути | Ржавчина
Напишите функцию, которая возвращает массив окончательных весов всех возможных путей от заданного источника до конца. Условие найти путь: Вода начнется из источника с весом 100 и будет течь вниз. Когда вода течет вниз, если она попадает в блок, она равномерно разделяется на левую и правую стороны этого блока, 50% влево и 50% вправо. Если поток воды не может течь влево или вправо (либо из-за блока, либо за пределы входного массива), он фактически застревает в структуре и больше не..

Кортежи и словари
Программирование на Питоне Прежде чем мы углубимся в кортежи и словари, давайте рассмотрим две важные концепции, т. е. типы последовательностей и изменчивость. Тип последовательности — это тип данных в Python, который может хранить более одного значения (или менее одного, так как последовательность может быть пустой), и эти значения можно просматривать последовательно (отсюда и название) , элемент за элементом. Поскольку цикл for — это инструмент, специально разработанный..

Реализация стеков в JavaScript
Одним из типов структур данных, которые вы можете использовать при решении алгоритмов, является стек. Стек — это линейная структура, в которой добавление или удаление элемента происходит в определенном порядке: LIFO (последним пришел — первым ушел) или FILO (первым пришел — последним ушел). Я буду использовать пример задачи из LeetCode под названием Действительные скобки . В этой задаче вы получаете строку символов, которая может быть только «()», «[]», «{}», и вы должны создать..