Форум программистов, компьютерный форум, киберфорум
Problem
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
Старый
[golang] Insert Delete GetRandom O(1) (Leetcode: 380)
Запись от alhaos размещена 16.06.2026 в 13:50. Обновил(-а) alhaos 16.06.2026 в 13:59
Показов 1088 Комментарии 0

Insert Delete GetRandom O(1)

Сложность: Medium
Источник: LeetCode 380

Задача

Реализовать структуру данных RandomizedSet, которая поддерживает следующие операции за O(1) в среднем:
  • Insert(val int) bool — добавляет элемент в набор. Возвращает true, если элемент был добавлен, и false, если он уже присутствовал.
  • Remove(val int) bool — удаляет элемент из набора. Возвращает true, если элемент был удален, и false, если его не было.
  • GetRandom()
...
Аватар для alhaos
Старый
[golang] Реализация стека с поддержкой получения минимального элемента за O(1)
Запись от alhaos размещена 16.06.2026 в 09:36. Обновил(-а) alhaos 16.06.2026 в 14:07
Показов 1011 Комментарии 0

Min Stack

Сложность: Medium
Источник: LeetCode 155

Задача:
Реализовать стек который поддерживает push, pop, top и получение минимального элемента за O(1).

Методы:
  • NewMinStack() *MinStack — инициализация
  • Push(val int) — добавить элемент
  • Pop() — удалить верхний элемент
  • Top() int — вернуть верхний элемент
  • GetMin() int — вернуть минимальный элемент

Пример:
Code
1
2
3
4
push(-2), push(0), push(-3)
getMin() → -3
pop()
top()
...
Аватар для alhaos
Старый
[golang] Конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов.
Запись от alhaos размещена 10.06.2026 в 15:30
Показов 2432 Комментарии 0
Метки go, golang, http, pattern, problem

Задача

Реализовать конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов.

Сигнатура

Go
1
func Fetch(urls []string, maxConcurrent int) []Result
Пример
Go
1
2
3
4
5
6
urls := []string{
    "https://example.com",
    "https://google.com",
    "https://github.com",
}
results := Fetch(urls, 2) // не более 2 запросов одновременно
...
Аватар для alhaos
Старый
[golang] Угол между стрелками часов
Запись от alhaos размещена 12.05.2026 в 13:05
Показов 6003 Комментарии 0
Метки golang, problem

По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов.

Go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import "math"
 
func angleClock(hour int, minutes int) float64 {
 
    const (
        oneMinuteAngle = 6.0
        oneHourAngle = 30.0
        oneMinuteForHourAngle = .5
    )
 
    if hour >= 12 {
        hour -= 12
    }
 
    minutesAngle := float64(minutes) * oneMinuteAngle
    hourAngle
...
Аватар для alhaos
Старый
[golang] 6. Zigzag Conversion
Запись от alhaos размещена 24.02.2025 в 19:54
Показов 2947 Комментарии 0
Метки go, problem

Нужно преобразовать входную строку в строку полученную из зигзага образного узора заданного количеством строк.

Go
1
2
3
4
5
6
7
8
9
10
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// convert
//
// 6. Zigzag Conversion
//
// The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)
//
...
Аватар для alhaos
Старый
[golang] 151. Reverse Words in a String
Запись от alhaos размещена 23.02.2025 в 14:37
Показов 2923 Комментарии 5
Метки go, problem

Дана строка необходимо поменять порядок входящих слов, необходимо исключить лидирующие и финишные пробелы, а так же повторяющиеся считать за один.

Воспользовался функцией strings.Fields() которая делает именно то, что нужно по условию.

Go
1
2
3
4
5
6
7
8
9
10
11
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
import (
    "strings"
)
 
// reverseWords
//
// 151. Reverse Words in a String
...
Аватар для alhaos
Старый
[golang] 14. Longest Common Prefix
Запись от alhaos размещена 23.02.2025 в 14:08
Показов 4510 Комментарии 0
Метки go, problem

Дан слайс строк, нужно вернуть строку содержащую общий префикс для всех строк, пустую сроку в случае отсутствия такового.

Go
1
2
3
4
5
6
7
8
9
10
11
12
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// longestCommonPrefix
//
// 14. Longest Common Prefix
//
// Write a function to find the longest common prefix string amongst an array of strings.
//
// If there is no common prefix, return an empty string "".
//
...
Аватар для alhaos
Старый
[golang] 58. Length of Last Word
Запись от alhaos размещена 23.02.2025 в 13:14
Показов 3104 Комментарии 0
Метки go, problem

Нужно найти длину крайнего слова в строке.

Go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// lengthOfLastWord
//
// 58. Length of Last Word
// Given a string s consisting of words and spaces, return the length of the last word in the string.
//
// A word is a maximal
// substring
//
//  consisting of non-space characters only.
//
// Example 1:
...
Аватар для alhaos
Старый
Рейтинг: 5.00. Голосов: 1.
[golang] 12. Integer to Roman
Запись от alhaos размещена 23.02.2025 в 12:37
Показов 2480 Комментарии 1
Метки go, problem

Целое число необходимо перевести в строку соответствующего числа в Римской системе счисления

Go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
import (
    "bytes"
 
// intToRoman
//
// 12. Integer to Roman
//
// Seven different symbols represent Roman numerals with the following values:
//
// Symbol      Value
// I     1
// V     5
// X
...
Аватар для alhaos
Старый
[golang] 13. Roman to Integer
Запись от alhaos размещена 22.02.2025 в 13:15
Показов 2222 Комментарии 1
Метки go, problem

Нужно написать функцию которая принимает строку представляющую собой римское число, а вернуть десятичное число.
Go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// romanToInt
//
// 13. Roman to Integer
//
// Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M.
//
// Symbol       Value
// I             1
// V             5
// X             10
...
Аватар для alhaos
Старый
[golang] 42. Trapping Rain Water
Запись от alhaos размещена 22.02.2025 в 12:27
Показов 2340 Комментарии 0
Метки go, problem

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

Название: Безымянный-2024-10-12-1405.png
Просмотров: 13443

Размер: 5.1 Кб

Метод решения с двумя...
Аватар для alhaos
Старый
[golang] 135. Candy
Запись от alhaos размещена 21.02.2025 в 10:00
Показов 2010 Комментарии 2
Метки go, problem

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

Найти минимальное количество конфет.

Go
1
2
3
4
5
6
7
8
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// candy
//
// 135. Candy
// There are n children standing
...
Аватар для alhaos
Старый
[golang] 134. Gas Station
Запись от alhaos размещена 17.02.2025 в 18:49
Показов 1939 Комментарии 0
Метки go, problem

Тут нам даны два целочисленных слайса gas и cost, индексы массива представляют собой заправочные станции. а элементы gas это количество топлива на такой станции, cost это количество топлива необходимое для того чтобы добраться до следующей станции, станции закольцованы, движений...
Аватар для alhaos
Старый
238. Product of Array Except Self
Запись от alhaos размещена 16.02.2025 в 18:15
Показов 1736 Комментарии 0
Метки go, problem

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

Ограничения: Не использовать деление, сложность O(n), 

Go
1
2
3
4
5
6
7
8
9
10
11
12
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// productExceptSelf
//
// 238. Product of Array Except Self
// Medium
// Topics
// Companies
// Hint
// Given
...
Аватар для alhaos
Старый
Рейтинг: 5.00. Голосов: 1.
[golang] 380. Insert Delete GetRandom O(1)
Запись от alhaos размещена 04.02.2025 в 08:55
Показов 2465 Комментарии 0
Метки go, problem

Тут требуется реализовать структуру которая обслуживает список уникальных элементов и реализует следующий интерфейс:

Go
1
2
3
4
5
6
type RandomizedSet interface {
 // Insert Добавляет элемент к списку уникальных элементов
 // в случае успеха возвращает ИСТИНУ
 // в обратном случае ЛОЖЬ
 Insert(val int) bool
 // Remove Удаляет элемент из списка уникальных
...
Аватар для alhaos
Старый
[golang] 274. H-Index
Запись от alhaos размещена 04.02.2025 в 06:24
Показов 1914 Комментарии 0
Метки go, problem

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

Задача рассчитать индекс Хирша

Go
1
2
3
4
5
6
7
8
9
10
11
12
13
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
import (
    "sort"
)
 
// hIndex
//
// 274. H-Index
//
// Given an array of integers citations where citations[i] is the number of citations a researcher received
...
Аватар для alhaos
Старый
[golang] 45. Jump Game II
Запись от alhaos размещена 04.02.2025 в 05:11
Показов 1905 Комментарии 0
Метки go, problem

Дан слайс целочисленных элементов, индекс начального элемента 0, в каждом элементе массива указанно на сколько максимально можно увеличить индекс чтобы достичь следующего элемента.

Задача вернуть минимальное количество шагов за которое можно добраться до крайнего элемента.

Во всех тестовых данных гарантируется наличие данного пути.

Go
1
2
3
4
5
6
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// jump
//
...
Аватар для alhaos
Старый
[golang] 55. Jump Game
Запись от alhaos размещена 30.01.2025 в 08:41
Показов 2796 Комментарии 0
Метки go, problem

Игра в прыжки, значение каждого элемента означает насколько максимально мы можем увеличить индекс этого элемента чтобы достичь других элементов. Нужно вернуть ИСТИНУ в том случае если мы можем добраться до крайнего элемента слайса и ЛОЖЬ в если нет.

Go
1
2
3
4
5
6
7
8
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// canJump
//
// 55. Jump Game
// You are given an integer array nums. You are initially positioned at the array's
...
Аватар для alhaos
Старый
[golang] 122. Best Time to Buy and Sell Stock II
Запись от alhaos размещена 29.01.2025 в 13:28
Показов 2901 Комментарии 0
Метки go, problem

Тут каждый день мы можем продавать или покупать акцию, на руках может быть только одна акция,
продавать и покупать можно в один и тот же день.

Go
1
2
3
4
5
6
7
8
9
10
11
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// maxProfitII
// 
// 122. Best Time to Buy and Sell Stock II
// 
// You are given an integer array prices where prices[i] is the price of a given stock on the ith day.
// 
// On each day,
...
Аватар для alhaos
Старый
[Golang] 121. Best Time to Buy and Sell Stock
Запись от alhaos размещена 28.01.2025 в 20:33
Показов 3073 Комментарии 0
Метки go, problem

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

Go
1
2
3
4
5
6
7
8
9
10
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// maxProfit
//
// 121. Best Time to Buy and Sell Stock
// You are given an array prices where prices[i] is the price of a given stock on the ith day.
//
// You want to maximize your profit
...
Аватар для alhaos
Старый
[golang] 169. Majority Element
Запись от alhaos размещена 28.01.2025 в 08:05
Показов 2730 Комментарии 0
Метки go, problem

Тут надо вернуть "мажористый" элемент который встречается в слайсе больше чем в половине случаев. По условиям задачи во входных данных такой элемент обязан присутствовать.

Go
1
2
3
4
5
6
7
8
9
10
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
package topInterview
 
// majorityElement
//
// 169. Majority Element
// Given an array nums of size n, return the majority element.
//
// The majority element is the element that appears
...
Аватар для alhaos
Старый
Рейтинг: 5.00. Голосов: 1.
[golang] 88. Merge Sorted Array
Запись от alhaos размещена 27.01.2025 в 11:29
Показов 3186 Комментарии 0
Метки go, problem

Go
1
2
3
4
5
6
7
8
9
10
11
12
13
package topInterview
 
// [url]https://leetcode.com/studyplan/top-interview-150/[/url]
 
// merge problem
//
// 88. Merge Sorted Array
//
// You are given two integer arrays nums1 and nums2, sorted in non-decreasing order, and two integers m and n,
// representing the number of elements in nums1 and nums2 respectively.
//
// Merge nums1 and nums2 into a single array sorted in non-decreasing order.
// The final sorted array should
...
Аватар для alhaos
Новые блоги и статьи
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности. Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru