Golang вопросы собеседований
13.5K subscribers
625 photos
3 videos
1 file
432 links
@notxxx1 - админ

@Golang_google - Golang для разработчиков

@itchannels_telegram - 🔥лучшие из ит

@golangl - chat

@golangtests - golang tests

@golang_jobsgo - go chat jobs

@ai_machinelearning_big_data - AI

@data_analysis_ml

РКН: clck.ru/3FmtKd
加入频道
💡Задача: Идеальное число

Условие: идеальное число - это положительное целое число, которое равно сумме делителей этого же числа, за исключением самого числа.

Необходимо проверить входное число на идеальность.

Пример:

Ввод:
num = 28
Вывод: true
Объяснение: 28 = 1 + 2 + 4 + 7 + 14

Ввод: num = 7
Вывод: false

👉 Решение

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
💡Задача: Нахождение существующего пути

Условие: дается ненаправленный граф, ребра которого представлены в массиве. Между каждой парой узлов в дереве имеется не более одного ребра.

Необходимо определить существует ли корректная дорога между узлом source и destination.

Пример:

Ввод:
n = 3, edges = [[0,1],[1,2],[2,0]], source = 0, destination = 2
Вывод: true
Объяснение: *во вложении

Ввод: n = 6, edges = [[0,1],[0,2],[3,5],[5,4],[4,3]], source = 0, destination = 5
Вывод: false

📌 Решение

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
🦫Работа с WebAssembly в Golang

WebAssembly позволяет запускать в браузере код низкоуровневых языков, таких как C, C++, Rust и Go. Мы компилируем Go-код в байт-код, и когда инстанцируем его в теге html-скрипта или JS-коде, среда выполнения браузера создает виртуальную машину для выполнения кода WebAssembly (wasm). Для распараллеливания выполнения WASM с основным потоком может использоваться веб-воркер.

Виртуальная машина задействует компилятор JUST IN TIME, который преобразует байт-код в машинный, а также может производить оптимизацию в зависимости от аппаратного обеспечения. WASM безопасен, поскольку работает в среде “песочницы” и не может получить доступ к аппаратному обеспечению базовой системы.

Когда мы загружаем или инстанцируем wasm, мы получаем модуль, который является пакетом Go-кода. При инстанцировании создается экземпляр wasm, являющийся отдельным контекстом выполнения модуля.

Хватит теории — перейдем к коду.

📌 Читать

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
💡 Задача: Отрезки пересечения отрезков

Условие: дается два массива, каждый элемент в котором представлен отрезком, значения которого соответствуют соответственно началу и концу.

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

Пример:

Ввод:
firstList = [[0,2],[5,10],[13,23],[24,25]], secondList = [[1,5],[8,12],[15,24],[25,26]]
Вывод: [[1,2],[5,5],[8,10],[15,23],[24,24],[25,25]]

Ввод: firstList = [[1,3],[5,9]], secondList = []
Вывод: [ ]

Решение

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
💡 Задача: Ежедневная температура

Условие: дается массив, в котором содержатся на температуры за определенный день. Необходимо вернуть массив, такой что будет содержать на i-ой позиции количество дней, которое необходимо выждать, чтобы наступил день теплее. Если такой ситуации не случается, то на i-ой позиции установить 0.

Пример:

Ввод:
temperatures = [73,74,75,71,69,72,76,73]
Вывод: [1,1,4,2,1,1,0,0]

Ввод: temperatures = [30,40,50,60]
Вывод: [1,1,1,0]

Решение

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Разность по потомкам

Сложность: Лёгкая

Условие задачи: Дан корень двоичного дерева, верните сумму наклона каждого узла дерева.

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

Пример:

Ввод:
root = [1,2,3]
Вывод: 1

Ввод:
root = [4,2,9,3,5,null,7]
Вывод: 15

📌 Решение задачи

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
💡 Задача: Максимальное количество сумок, полностью заполненных камнями

Условие: дается n-сумок, пронумерованных с нуля. Дается также два массива, проиндексированных аналогичным образом: capacity и rocks. i-а сумка может вмещать capacity[i] камней и в текущий момент содержит уже rocks[i] каменей. Помимо этого дается еще additionalRocks, число камней, которые можно добавить в произвольную сумку.

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

Пример:

Ввод:
capacity = [2,3,4,5], rocks = [1,2,4,4], additionalRocks = 2
Вывод:
3

Ввод:
capacity = [10,2,2], rocks = [2,2,0], additionalRocks = 100
Вывод:
3

Решение

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Столбцы таблицы Excel

Сложность: Низкая

Условие : на вход подается номер столбца, необходимо конвертировать его в буквенное представление, которое будет использоваться в таблице-Excel.

Пример:

Ввод:
columnNumber = 1
Вывод:
"A"

Ввод: columnNumber = 28
Вывод:
"AB"

Решение

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
💡Задача: Самый длинный путь с разными соседними символами

Условие: дано дерево (т.е. связанный неориентированный граф, не имеющий циклов) с корнем в узле 0, состоящее из n узлов, пронумерованных от 0 до n - 1. Дерево представлено родительским массивом с индексом 0 размера n, где родительский элемент[i] является родительским элементом узла i. Поскольку узел 0 является корневым, родительский элемент[0] == -1.

Вам также выдаются строки длиной n, где s[i] - символ, присвоенный узлу i.

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

Пример:

Ввод:
parent = [-1,0,0,1,1,2], s = "abacbe"
Вывод: 3

Ввод: parent = [-1,0,0,0], s = "aabc"
Вывод: 3

Решение

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Go — 100 вопросов/заданий с собеседований

Читать

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Функции, которые являются частью исходного кода вашего проекта, но не могут быть достигнуты ни при каком выполнении, называются "мертвым кодом", и они оказывают негативное влияние на усилия поддержке кода.

Сегодня мы рады поделиться с вами инструментом под названием deadcode, который поможет вам выявить их.

$ go install golang.org/x/tools/cmd/deadcode@latest
$ deadcode -help
The deadcode command reports unreachable functions in Go programs.

Usage: deadcode [flags] package...


https://go.dev/blog/deadcode

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Восстановить IP

Сложность: Средняя

Условие задачи: Рабочий IP-адрес состоит ровно из четырех целых чисел, разделенных одиночными точками. Каждое целое число находится в диапазоне от 0 до 255 (включительно) и не может содержать начальных нулей.

Например, "0.1.2.201" и "192.168.1.1" являются допустимыми IP-адресами, но "0.011.255.245", "192.168.1.312" и "[email protected] " являются недопустимыми IP-адресами.
Учитывая строку s, содержащую только цифры, верните все возможные действительные IP-адреса, которые могут быть сформированы путем вставки точек в s. Вам не разрешается изменять порядок или удалять какие-либо цифры в s. Вы можете вернуть действительные IP-адреса в любом порядке.

Пример:

Ввод:
s = "25525511135"
Вывод:
["255.255.11.135","255.255.111.35"]

Ввод:
s = "0000"
Вывод:
["0.0.0.0"]

📌 Решение задачи

Пишите свое решение в комментариях👇

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
👣 Golang 100 вопросов с собеседований.

Видео
Статья
Код

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
💡Задача: Наиболее частое слово

Условие: дается строковый абзац и строковый массив запрещенных слов banned возвращают наиболее часто встречающееся слово, которое не запрещено. Гарантируется, что есть хотя бы одно слово, которое не запрещено, и что ответ уникален.

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

Пример:

Ввод:
paragraph = "Bob hit a ball, the hit BALL flew far after it was hit.", banned = ["hit"]
Вывод: "ball"

Ввод: paragraph = "a.", banned = []
Вывод: "a"

📌 Решение

Пишите свое решение в комментариях👇

@golang_interview
🔝 60+ ресурсов для поиска удаленной работы в валюте

1. Remote OK (remoteok.io)
2. Папка с вакансиями
3. FlexJobs (flexjobs.com)
4. Indeed (indeed.com)
5. Glassdoor (glassdoor.com)
6. Linkedin (linkedin.com/jobs)
7. SimplyHired (simplyhired.com)
8. Virtual Vocations (virtualvocations.com)
9. RemoteJobsClub (remotejobsclub.com)
10. RemoteСo (remote.co)
11. Working Nomads (workingnomads.co)
12. RemoteJobsPro (remotejobspro.com)
13. Jobspresso (jobspresso.co)
14. Wellfound (wellfound.com/jobs)
15. TheMuse (themuse.com)
16. Dice (dice.com)
17. Remote Freelance (remotefreelance.com)
18. RemoteGurus (remgu.com)
19. Upwork (upwork.com)
20. Toptal (toptal.com)
21. Guru (guru.com)
22. TechCareers (www.techcareers.com)
23. Pangian (pangian.com)
24. SkipTheDrive (skipthedrive.com)
25. NoDesk (nodesk.co)
26. Remotees (remotees.com)
27. EU Remote Jobs (euremotejobs.com)
28. Outsourcely (outsourcely.com)
29. Remote in Europe (remoteineurope.com)
30. Remote Jobs in Europe (jobgether.com)
31. PowerToFly (powertofly.com)
32. RemoteHub (remotehub.io)
33. RemoteWorkHub (remoteworkhub.com)
34. VirtualAssistantJobs (virtualassistantjobs.com)
35. Simply (simply-communicate.com)
36. WordPress Jobs (jobs.wordpress.net)
37. Remotive (remotive.com)
38. Dynamite jobs (dynamitejobs.com)
39. Idealist (idealist.org)
40. JobMote (jobmote.com)
41. AwesomeJobs (awesomejobs.io)
42. CyberCoders (cybercoders.com)
43. CryptoJobsList (cryptojobslist.com)
44. Remoters (remoters.net)
45. CareerBuilder (careerbuilder.com)
46. DailyRemote (dailyremote.com)
47. CareerJet (careerjet.com)
48. Crossover (crossover.com)
49. CloudStaff (cloudstaff.com)
50. ItJobPro (itjobpro.com)
51. SkipTheDrive: https://skipthedrive.com
52. Remotive: https://remotive.io
53. Виртуальные профессии: https://virtualvocations.com
54. JustRemote: https://justremote.co
55. Удаленная техническая работа: https://remotetechwork.com
56. Dynamite Jobs: https://dynamitejobs.co
57. Pangian: https://pangian.com
58. Outsourcely: https://outsourcely.com
59. Remote Woman: https://remotewoman.com
60. Jobmote: https://jobmote.com
61. We Work Remotely (weworkremotely.com)
#it #job
62. Fiver (https://www.fiverr.com)

@golang_interview
👣 Ускоряем Go: известные и не очень методы оптимизации и связанные с ними штуки

Читать

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
💡Задача: Треугольник наибольшей площади

Условие: дается массив точек на плоскости X-Y, где точки [i] = [xi, yi], верните площадь самого большого треугольника, который может быть образован любыми тремя различными точками. Будут приняты ответы в пределах 10-5 от фактического ответа.

Пример:

Ввод:
points = [[0,0],[0,1],[1,0],[0,2],[2,0]]
Вывод: 2.00000
Объяснение:

Ввод:
points = [[1,0],[0,0],[0,1]]
Вывод: 0.50000

Решение

Пишите свое решение в комментариях👇

@golang_interview
⚡️ Задание с собеседования Golang разработчика.

ставьте 👍 на видео, мы готовим большой разбор сложных задач.

https://www.youtube.com/watch?v=hEKVID4pxog

@golang_interview
👣 Где изучать Golang в 2024

Статья

@golang_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
💡Задача: Ряд клавиатуры

Условие: дается массив из строк, необходимо вернуть те строки из массива, которые могут быть набраны лишь при использовании знаков из одного ряда.

Пример:

Ввод:
words = ["Hello","Alaska","Dad","Peace"]
Вывод:
["Alaska","Dad"]
Объяснение:

Ввод:
words = ["omk"]
Вывод:
[ ]

📌 Решение

Пишите свое решение в комментариях👇

@golang_interview