ar
Feedback
Библиотека задач по Go | тесты, код, задания

Библиотека задач по Go | тесты, код, задания

الذهاب إلى القناة على Telegram

Задачи и тесты по Go для тренировки и обучения. Учиться у нас: clc.to/4o0_XA По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot Наши каналы: https://t.me/proglibrary/9197

إظهار المزيد
6 758
المشتركون
+124 ساعات
-57 أيام
-530 أيام
أرشيف المشاركات
Какой из приведённых вариантов использования sync.Cond некорректный и может вызвать ошибку или непредсказуемое поведение?
Anonymous voting

🙌 Хардкорный вышмат для тех, кто интересуется ML, AI, DS Начать с вводных занятий можно здесь, ответив всего на 4 вопроса –
🙌 Хардкорный вышмат для тех, кто интересуется ML, AI, DS Начать с вводных занятий можно здесь, ответив всего на 4 вопроса – https://proglib.io/w/13a0ddad Что будет на демо? 🔹Вводный урок от CPO курса; 🔹Лекции со всеми преподавателями МГУ по темам: теория множеств, непрерывность функции, основные формулы комбинаторики, матрицы и операции над ними, градиентный спуск; 🔹Практические задания и дополнительные материалы! ⚡️Переходите и активируйте – https://proglib.io/w/13a0ddad

Что выведет код?
Anonymous voting

Флаг -cpu можно использовать при запуске тестов Go, чтобы указать список значений GOMAXPROCS, с использованием которых необхо
Флаг -cpu можно использовать при запуске тестов Go, чтобы указать список значений GOMAXPROCS, с использованием которых необходимо запустить тесты. Например,
go test -cpu=4,5 
запустит тесты 2 раза. Тесты сначала будут запущены с четырьмя процессорами, а затем второй раз — с пятью. #tip

notifyList в пакете sync — это структура, состоящая из двух целых чисел (wait и notify) и связанного списка горутин. Как работает механизм пробуждения горутин с помощью notifyListNotifyOne?
Anonymous voting

Самые полезные каналы для программистов в одной подборке! Сохраняйте себе, чтобы не потерять 💾 🔥Для всех Библиотека программиста — новости, статьи, досуг, фундаментальные темы Книги для программистов IT-мемы Proglib Academy — тут мы рассказываем про обучение и курсы Азбука айтишника — здесь мы познаем азы из мира программирования 🤖Про нейросети Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка Библиотека нейротекста | ChatGPT, Gemini, Bing Библиотека нейровидео | Sora AI, Runway ML, дипфейки Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion #️⃣C# Книги для шарпистов | C#, .NET, F# Библиотека шарписта — полезные статьи, новости и обучающие материалы по C# Библиотека задач по C# — код, квизы и тесты Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel ☁️DevOps Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps Вакансии по DevOps & SRE Библиотека задач по DevOps — код, квизы и тесты Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования 🐘PHP Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP Вакансии по PHP, Symfony, Laravel Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по PHP — код, квизы и тесты 🐍Python Библиотека питониста — полезные статьи, новости и обучающие материалы по Python Вакансии по питону, Django, Flask Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по Python — код, квизы и тесты ☕Java Книги для джавистов | Java Библиотека джависта — полезные статьи по Java, новости и обучающие материалы Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по Java — код, квизы и тесты Вакансии для java-разработчиков 👾Data Science Книги для дата сайентистов | Data Science Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по Data Science — код, квизы и тесты Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту 🦫Go Книги для Go разработчиков Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по Go — код, квизы и тесты Вакансии по Go 🧠C++ Книги для C/C++ разработчиков Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++ Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования Библиотека задач по C++ — код, квизы и тесты Вакансии по C++ 💻Другие каналы Библиотека фронтендера Библиотека мобильного разработчика Библиотека хакера Библиотека тестировщика Библиотека разработчика игр | Gamedev, Unity, Unreal Engine Вакансии по фронтенду, джаваскрипт, React, Angular, Vue Вакансии для мобильных разработчиков Вакансии по QA тестированию InfoSec Jobs — вакансии по информационной безопасности 📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈 Также у нас есть боты: Бот с IT-вакансиями Бот с мероприятиями в сфере IT Мы в других соцсетях: 🔸VK 🔸YouTube 🔸Дзен 🔸Facebook * 🔸Instagram * * Организация Meta запрещена на территории РФ

Go-разработчики часто используют следующую конструкцию:
f, err := os.Create("file.txt")
if err != nil {
    return err
}
defer f.Close()
Однако, для файлов с возможностью записи это может быть опасно, так как метод Close() может вернуть ошибку, которая игнорируется при использовании defer. Ошибки могут возникать на этапе закрытия файла, когда система завершает запись данных на диск. Чтобы избежать потери данных, важно проверять ошибки явным образом:
f, err := os.Create("file.txt")
if err != nil {
    return err
}
if _, err := f.Write([]byte("Hello, world!")); err != nil {
    f.Close()
    return err
}
return f.Close()
Использование defer безопасно для чтения, но для записи стоит быть осторожнее и проверять ошибки вручную. 👉 Подробнее

📹 Все о массивах и слайсах в Go: видеогайд от Владимира Балуна ⏱️ Таймкоды: 00:00 Введение 00:47 Устройство массивов в Go 01
📹 Все о массивах и слайсах в Go: видеогайд от Владимира Балуна ⏱️ Таймкоды: 00:00 Введение 00:47 Устройство массивов в Go 01:40 Работа с массивами в Go 10:00 Перемещение массива в стеке 11:29 Итерация по массивам в Go 15:11 Где аллоцируются массивы в Go 17:22 Педедача массива в функцию 18:16 Слайсы в Go 21:34 Реаллокация слайса в Go 24:45 Резервирование памяти под слайс 25:44 Создание слайса без инициализации 27:38 Модификация строк в Go 28:35 Приведение слайсов в строки и обратно без копирования 30:13 Передача слайса в функцию 31:12 Итерация по слайсам в Go 33:55 Оптимизация итерации по слайсам в Go 35:42 Получение слайсов в Go 42:40 Получение слайса из массива в Go 43:15 Конвертация слайса в массив в Go 44:15 Конвертация слайса в указатель на массив в Go 45:02 Указатель на нулевой массив в Go 46:18 Удаление из конца слайса в Go 46:51 Удаление из начала слайса в Go 49:02 Реализация стека и очереди в Go 50:00 Как увеличить размер слайса в Go 50:48 Как уменьшить емкость слайса в Go 54:05 Где аллоцируются слайсы в Go 59:12 Как очистить слайс в Go 01:01:51 В чем разница пустых и нулевых слайсов в Go 01:05:17 Как сравнивать слайсы в Go 01:07:53 Как скопировать данные слайса в Go 01:09:47 Почему функция appeng возвращает слайсв в Go 01:12:39 Потенциальные проблемы с функцией append в Go 01:14:10 Реализация функции append в Go 01:15:32 Утечки памяти при работе со слайсами в Go 📺 YouTube | VK Видео | Дзен | Rutube

❗️Задача для конкурса в честь дня программиста Условие: Даны две строки s и f (начальная и конечная) и словарь D (набор слов). Нужно определить, можно ли преобразовать s в f, используя только слова из словаря D. При этом каждое преобразование должно менять только один символ, а длина слова должна оставаться неизменной. Если преобразование возможно, нужно найти кратчайшую последовательность таких преобразований и вернуть ее длину. Если преобразование невозможно, вернуть "Преобразование невозможно". Пример ввода 1:
    D = ["cat", "cot", "dot", "dog", "bat", "dag"]
    s = "cat"
    t = "dog"
Вывод: Минимальное количество шагов для преобразования 'cat' в 'dog': 3 Пример ввода 2:
    D = ["cat", "cot", "bat"]
    s = "cat"
    t = "dog"
Вывод: Минимальное количество шагов для преобразования 'cat' в 'dog': Преобразование невозможно

🆒 Дарим наш курс за ответ на задачу В предверии дня программиста проводим конкурс: решите нашу задачу на тему программирован
🆒 Дарим наш курс за ответ на задачу
В предверии дня программиста проводим конкурс: решите нашу задачу на тему программирования — рандомно выберем победителя
Подробные условия: ➡️ Решаем задачу со следующего поста ➡️ Решение присылаем в бота @ProglibContest_bot ➡️ Рандомно среди правильных ответов разыгрываем курс на выбор Курсы на выбор: 🔵 Архитектуры и шаблоны программирования 🔵 Основы программирования на Python 🔵 Базовые модели ML и приложения 🔵 Frontend Basic: принцип работы современного веба Таймлайн: 11-12 сентября — принимаем ответы ⬇️ 13 сентября — подводим итоги

Что выведет код?
Anonymous voting

🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи Напоминаем, что у нас есть бесплатный курс для всех, кто хо
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом. Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций. Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах. 👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.

Что выведет код?
Anonymous voting

Что выведет код на Go?
Anonymous voting

🏃 Самоучитель по Go для начинающих. Часть 16. Тестирование кода и его виды. Table-driven подход. Параллельные тесты В статье
🏃 Самоучитель по Go для начинающих. Часть 16. Тестирование кода и его виды. Table-driven подход. Параллельные тесты В статье познакомимся с концепцией тестирования кода и её основными видами, изучим инструменты стандартного пакета testing, научимся запускать и визуализировать тесты. В качестве практического задания напишем и протестируем алгоритм «Решето Эратосфена». 👉 Читать гайд 📌 Остальные части в серии: 1. Особенности и сфера применения Go, установка, настройка 2. Ресурсы для изучения Go с нуля 3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста. 4. Переменные. Типы данных и их преобразования. Основные операторы 5. Условные конструкции if-else и switch-case. Цикл for. Вложенные и бесконечные циклы 6. Функции и аргументы. Области видимости. Рекурсия. Defer 7. Массивы и слайсы. Append и сopy. Пакет slices 8. Строки, руны, байты. Пакет strings. Хеш-таблица (map) 9. Структуры и методы. Интерфейсы. Указатели. Основы ООП 10. Введение в ООП. Наследование, абстракция, полиморфизм, инкапсуляция 11. Обработка ошибок. Паника. Восстановление. Логирование 12. Обобщенное программирование. Дженерики 13. Работа с датой и временем. Пакет time 14. Интерфейсы ввода-вывода. Буферизация. Работа с файлами. Пакеты io, bufio, os 15. Конкурентность. Горутины. Каналы

🏗️ Структуры данных для разработчиков: 10 самых важных Структуры данных — фундамент эффективной разработки. Кратко разберем
🏗️ Структуры данных для разработчиков: 10 самых важных Структуры данных — фундамент эффективной разработки. Кратко разберем 10 ключевых структур данных, которые необходимо освоить каждому разработчику для создания производительных и масштабируемых приложений, а подробнее читайте в статье👇 🔹 Списки отлично подходят для хранения и обработки упорядоченных данных и полезны в различных приложениях, таких как управление задачами, ленты соцсетей и корзины интернет-магазинов. 🔹 Массивы — упорядоченная коллекция элементов фиксированного размера и хорошо подходят для ситуаций, где размер коллекции известен или редко меняется. 🔹 Стеки следуют принципу «последним пришел — первым вышел». Они идеальны для реализации операций отмены/повтора в текстовых редакторах или ведения истории просмотров в веб-браузерах. 🔹 Очереди работают по принципу «первым пришел — первым вышел». Они подходят для управления заданиями печати, отправки действий пользователя в играх на сервер или обработки сообщений в чат-приложениях. 🔹 Кучи используются для планирования задач и управления памятью. Они особенно полезны в реализации очередей с приоритетами, где нужен доступ к элементу с наивысшим или наименьшим приоритетом. 🔹 Деревья организуют данные иерархически. Они полезны для представления данных с естественными иерархиями или связями и могут использоваться в различных приложениях, таких как индексация баз данных. 🔹 Хеш-таблицы позволяют эффективно искать, вставлять и удалять данные. Они используют хеш-функцию для сопоставления ключей с соответствующими местами хранения и обеспечивают доступ к сохраненным значениям за постоянное время. 🔹 Суффиксные деревья специализируются на поиске строк в документах, что делает их идеальными для текстовых редакторов и алгоритмов поиска. 🔹 Графы отслеживают отношения и находят пути, что делает их незаменимыми в социальных сетях, рекомендательных системах и алгоритмах поиска путей. 🔹 KD-деревья хороши для поиска ближайших соседей и важны для картографических приложений и геолокационных сервисов.