Напишите код, который позволяет найти минимальное расстояние (выражаемое количеством слов) между любыми двумя словами в файле

Вам дан большой текстовый файл, в котором содержатся слова. Необходимо написать код, который позволит найти минимальное расстояние между любыми двумя словами. Достаточно ли будет O(n) времени? Сколько памяти понадобится для…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: У вас есть неограниченное количество монет достоинством 25, 10, 5 и 1 цент. Напишите код, определяющий количество способов представления n центов

У вас есть неограниченное количество монет достоинством 25, 10, 5 и 1 цент. Напишите код, определяющий количество способов представления n центов

Это рекурсивная задача, поэтому давайте разберемся, как рассчитать makeChange(n), основываясь на предыдущих решениях (подзадачах). Пусть n = 100. Мы хотим вычислить количество способов представления 100 центов. Нам известно, что для…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Опишите, как можно использовать один одномерный массив для реализации трех стеков

Подобно многим задачам, все зависит от того, как мы собираемся поддерживать эти стеки. Если нам нужно выделить определенное пространство для каждого стека, можно так и поступить. Но в этом случае…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Как рассадить необщительных посетителей в баре так, чтобы клиентов было как можно больше?

Как рассадить необщительных посетителей в баре так, чтобы клиентов было как можно больше?

В этот бар ходят необщительные посетители. Вдоль барной стойки расположены 25 мест. Всякий раз, когда входит новый посетитель, он обязательно садится на самое дальнее, насколько это возможно, место от остальных…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

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

Эту задачу также можно решить двумя способами: простым и сложным. Давайте рассмотрим оба решения. «Простое» решение: O(N4) Мы знаем, что длина стороны самого большого квадрата равна N и существует только…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: В каком случае добираясь до машины, вы меньше промокнете: быстро пробежав или пройдя путь спокойно?

В каком случае добираясь до машины, вы меньше промокнете: быстро пробежав или пройдя путь спокойно?

Идет дождь, а вам надо добраться до вашей машины, которая стоит в самом дальнем конце парковки. Побежите ли вы к ней или нет, если ваша цель — как можно меньше…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Сгенерированные случайным образом числа передаются методу. Напишите программу расчета медианы, динамически отслеживающую новые поступающие значения

Одно из возможных решений — использовать две кучи разных приоритетов: максимальная куча (maxHeap) для значений выше среднего и минимальная куча (minHeap) для значений ниже среднего. Это позволит разделить элементы примерно…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

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

Это довольно сложная, но очень популярная задача. Давайте решим ее на примере массива: 2 3 -8 -1 2 4 -2 3 Если рассматривать массив как содержащий чередующиеся последовательности положительных и…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Сколько нулей в конце факториала 100?

Сколько нулей в конце факториала 100?

Факториал одной сотни записывается как 100! Это произведение всех натуральных чисел до ста включительно. Иногда запись факториала имеет такой вид: 100 х 99 х 98 х 97 х … х…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

По результатам исследования известно, что 70% людей любят кофе и 80% предпочитают чай. Каковы верхние и нижние границы доли людей, которые одновременно любят кофе и чай?

Не все любители чая положительно относятся к кофе; не все любители котов терпят собак, и не все фанаты одной команды одновременно являются болельщиками другой. Нарисуйте диаграмму Венна на доске или…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: По результатам исследования известно, что 70% людей любят кофе и 80% предпочитают чай. Каковы верхние и нижние границы доли людей, которые одновременно любят кофе и чай?

У вас есть 25 лошадей. Сколько забегов вам нужно устроить, чтобы определить трех самых быстрых из них?

Вы не можете пользоваться секундомером. В каждом заезде могут участвовать только пять лошадей. Вы можете начать свой ответ с уточнения: спросите интервьюера, следует ли считать «самой быстрой лошадью» ту, которая…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: У вас есть 25 лошадей. Сколько забегов вам нужно устроить, чтобы определить трех самых быстрых из них?
Обложка: Отыщите минимальное число монет, позволяющее дать любую сдачу

Отыщите минимальное число монет, позволяющее дать любую сдачу

Есть два способа интерпретации этого вопроса. Они приводят к разным ответам, и поэтому вам лучше спросить интервьюера, что он имеет в виду (или подготовить оба варианта ответов). Одна интерпретация заключается…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Имеется N компаний, и вы хотите, чтобы они слились и образовали одну крупную компанию. Сколько разных способов вы можете использовать для этого?

При правильном толковании термина «слияние» две компании отказываются от своей прежней индивидуальности и сливаются в новое образование, имеющее новый бренд. Так, фармацевтические гиганты Glaхо Wеllсоmе и SmithКlіnе Веесham в 2000…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Игра, в которой требуется вытаскивать шарики из кувшина. Забравший последний шарик — победитель. Нужно определить лучшую стратегию

Игра, в которой требуется вытаскивать шарики из кувшина. Забравший последний шарик — победитель. Нужно определить лучшую стратегию

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

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Как избежать зацикливания при разработке поискового робота

Прежде всего, давайте зададим себе вопрос: при каких условиях в этой задаче может возникнуть бесконечный цикл? Такая ситуация вполне вероятна, например, если мы рассматриваем Всемирную паутину как граф ссылок. Чтобы…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Напишите метод, тасующий карточную колоду

Напишите метод, тасующий карточную колоду

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

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji

Задача: написать код, удаляющий дубликаты из несортированного связного списка

Дополнительное задание. Как вы будете решать задачу, если запрещается использовать временный буфер? Решение Что бы удалить копии из связного списка, их нужно сначала найти. Для этого подойдет простая хэш-таблица. В приведенном…

3
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Задача: написать код, удаляющий дубликаты из несортированного связного списка
Обложка: Сколько дней потребуется, чтобы все голубоглазые уехали с острова?

Сколько дней потребуется, чтобы все голубоглазые уехали с острова?

На острове существует правило — голубоглазые люди не могут там находиться. Самолет улетает с острова каждый вечер в 20:00. Все жители собираются за круглым столом ежедневно, каждый человек может видеть…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Реализуйте алгоритм для однонаправленного списка с петлёй, возвращающий начальный узел петли

Эта задача является разновидностью классической задачи, задаваемой на собеседованиях, — определить, содержит ли связный список петлю. Давайте используем подход «Сопоставление с образцом». Часть 1. Определяем, есть ли в связном списке…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Алгоритм, демонстрирующий круг знакомств человека для социальных сетей

Предположим, что нам требуется разработать алгоритм, демонстрирующий связи человека с человеком, но при условии, что база очень большая. Например, для использования в Facebook или LinkedIn. Хороший способ решить эту задачу…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Алгоритм, демонстрирующий круг знакомств человека для социальных сетей

Разработка алгоритма, обнаруживающего в массиве все пары целых чисел, сумма которых равна заданному значению.

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

1
1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Алгоритм, реализующий следующее условие: если элемент матрицы в точке NxM равен 0, то весь столбец и вся строка обнуляются.

Алгоритм, реализующий следующее условие: если элемент матрицы в точке NxM равен 0, то весь столбец и вся строка обнуляются.

На первый взгляд задача очень проста – просто пройтись по матрице и для каждого нулевого элемента обнулить соответствующие строку и столбец. Но у такого решения есть один большой недостаток: на…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Проверка анаграмм

На этот раз будем изучать задачу «Проверка анаграмм» («Verify Anagrams»). Мы уже писали об этой задаче ранее, но теперь расскажем о ней немного другим способом. Анаграмма — это игра со…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Золотая пирамида — задача про треугольник, составленный из чисел

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

1
2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Золотая пирамида — задача про треугольник, составленный из чисел

Задача про вероятность попадания баскетбольного мяча в корзину

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

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Задача про вероятность попадания баскетбольного мяча в корзину

Как обнаружить дублирующиеся URL-адреса

Сложность задачи заключается в том, что адресов дано 10 миллиардов. Сколько пространства понадобится для хранения 10 миллиардов URL-адресов? Если в среднем URL-адрес занимает 100 символов, а каждый символ представляется 4 байтами,…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: У скольких целых чисел, лежащих в диапазоне от 1 до 1000, есть цифра 3?

У скольких целых чисел, лежащих в диапазоне от 1 до 1000, есть цифра 3?

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

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Алгоритм, реализующий стек со стандартными функциями push и pop и дополнительной функцией min за O(1)

Итак, оценка времени работы функция push, pop и min – O(1). Экстремумы изменяются не часто. Фактически минимум может поменяться только при добавлении нового элемента. Одно из решений – сравнивать добавляемые элементы…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Алгоритм, реализующий стек со стандартными функциями push и pop и дополнительной функцией min за O(1)

В темной комнате вам вручают колоду карт, в которой N карт лежат рубашкой вверх, а остальные — вниз. Вы не можете видеть карты. Как вы разделите колоду на две стопки, чтобы в каждой из них было одинаковое число карт, лежащих рубашкой вверх?

Эта головоломка в своё время была популярна в JP Morgan Chase. Понятное дело, оказавшись в темноте, вы просто достанете сотовый телефон и воспользуетесь экраном как фонариком. Однако эта задачка появилась…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: В темной комнате вам вручают колоду карт, в которой N карт лежат рубашкой вверх, а остальные — вниз. Вы не можете видеть карты. Как вы разделите колоду на две стопки, чтобы в каждой из них было одинаковое число карт, лежащих рубашкой вверх?

Метод, определяющий, является ли одна строка перестановкой другой

Для начала нужно уточнить детали. Следует разобраться, является ли сравнение анаграмм чувствительным к регистру. То есть является ли строка «God» анаграммой «dog»? Также нужно выяснить, учитываются ли пробелы. Предположим, что для…

1
3
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji