Logo
TGCATALOG
Каталог Подборки Блог
Golang | LeetCode

Golang | LeetCode

LeetCode задачи на Golang. Решения с кодом и объяснениями.

Нет оценок
40
09.09.2026
40
09.09.2026
Нет оценок
40
09.09.2026
Безопасный переход через бот
О канале

LeetCode задачи на Golang. Решения с кодом и объяснениями.

Подписчиков 3,616
Тематика Технологии
Язык Русский
Ссылка t.me/easy_golang_task

Также рекомендуем

Kekaton AI | Озвучка и клон голоса
Kekaton AI | Озвучка и клон голоса
Бот

AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.

Описание

Канал с решениями популярных LeetCode задач на языке Go. Фокус на оптимизированных алгоритмах, эффективном использовании памяти и идиоматичном коде. Поможет подготовиться к техническим интервью в компаниях, где используют Golang.

Последние посты

Golang | LeetCode
Golang | LeetCode
🔒Открыть пост
и посмотреть медиа
Задача: 710. Random Pick with Blacklist Сложность: hard Вам дано целое число n и массив уникальных целых чисел blacklist. Разработайте алгоритм выбора случайного целого числа из диапазона [0, n - 1], не входящего в черный список. Любое целое число, находящееся в указанном диапазоне и не входящее в черный список, должно с равной вероятностью быть возвращено. Оптимизируйте алгоритм так, чтобы он минимизировал количество обращений к встроенной функции random вашего языка. Реализуйте класс Solution: Solution(int n, int[] blacklist) Инициализирует объект целым числом n и целым числом из черного списка blacklist. int pick() Возвращает случайное целое число в диапазоне [0, n - 1] и не входящее в черный список. Пример: Input ["Solution", "pick", "pick", "pick", "pick", "pick", "pick", "pick"] [[7, [2, 3, 5]], [], [], [], [], [], [], []] Output [null, 0, 4, 1, 6, 1, 0, 4] 👨💻 Алгоритм: 1⃣Создайте маппинг для чисел, входящих в черный список, чтобы сопоставить их с числами из диапазона [n - len(blacklist), n - 1], которые не входят в черный список. 2⃣Создайте массив для хранения возможных чисел для выбора, исключая числа из черного списка. 3⃣При каждом вызове функции pick() используйте встроенную функцию random для выбора случайного индекса из массива возможных чисел и возвращайте соответствующее значение. 😎 Решение: package main import ( "math/rand" "time" ) type Solution struct { mapping map[int]int bound int } func Constructor(n int, blacklist []int) Solution { mapping := make(map[int]int) bound := n - len(blacklist) blackset := make(map[int]struct{}) for _, b := range blacklist { blackset[b] = struct{}{} } whitelist := bound for _, b := range blacklist { if b < bound { for { if _, exists := blackset[whitelist]; !exists { break } whitelist++ } mapping[b] = whitelist whitelist++ } } return Solution{mapping: mapping, bound: bound} } func (this *Solution) Pick() int { r := rand.Intn(this.bound) if mapped, exists := this.mapping[r]; exists { return mapped } return r } func main() { rand.Seed(time.Now().UnixNano()) } Ставь 👍 и забирай 📚 Базу знаний
Golang | LeetCode
Динамика подписчиков
+-0.1% за 30 дней
Текущие
3,616
Месяц назад
3,619
Средний рост
+0 / день
Обновлено
7 часов назад

Отзывы о канале Golang | LeetCode

Авторизуйтесь, чтобы оставить отзыв

Только зарегистрированные пользователи могут делиться своим мнением.

Пока нет отзывов

Станьте первым, кто поделится своим впечатлением об этом ресурсе!

Похожие ресурсы

Binance Red Packet Code - коды

Binance Red Packet Code - коды

Технологии
13

Ежедневные коды для Binance Red Packet и Square. Бесплатные бонусы крипты для пользователей.

Канал

Молодёжное медиа о цифровой безопасности, медиаграмотности и развитии критического мышления.

Канал
Codeby Games - Hacker Lab

Codeby Games - Hacker Lab

Технологии
30

Игровая платформа для практики в информационной безопасности: задачи, уроки и развитие навыков. 🔒

Канал
Переход на светлую тему
Главная Каталог Подборки Блог Вход