This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
🏕 DOOM внутри базы данных SQL это реально
Разработчик запустил DOOM прямо в CedarDB, и игра полностью написана на SQL
Многопользовательский режим работает, а графика выполнена в ASCII, каждая деталь от рендеринга до синхронизации игроков реализована в базе данных
Для тех, кто ценит необычные проекты и готов погрузиться в SQL-экстрим: https://github.com/cedardb/DOOMQL
👉 Новости 👉 База вопросов
Разработчик запустил DOOM прямо в CedarDB, и игра полностью написана на SQL
Многопользовательский режим работает, а графика выполнена в ASCII, каждая деталь от рендеринга до синхронизации игроков реализована в базе данных
Для тех, кто ценит необычные проекты и готов погрузиться в SQL-экстрим: https://github.com/cedardb/DOOMQL
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩1
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
🏠 Прикольный тренажёр по Linux
Это TUI-приложение содержит более 70 задачек для обучения основам работы в терминале
Забираем с GitHub
👉 Новости 👉 База вопросов
Это TUI-приложение содержит более 70 задачек для обучения основам работы в терминале
Забираем с GitHub
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
#Собес #Cplus
🤔 Что такое vector в C++?
💬 Кратко:
Вектор в С++ — это динамический массив, который может хранить элементы любого типа данных и автоматически изменяет свой размер при необходимости.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
💬 Кратко:
Вектор в С++ — это динамический массив, который может хранить элементы любого типа данных и автоматически изменяет свой размер при необходимости.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
YeaHub
YeaHub — тренажер собеседований по IT
5000+ вопросов для подготовки к интервью. Фильтры, квизы, статистика!
This media is not supported in your browser
VIEW IN TELEGRAM
#полезное
🤯 Разработчик, недавно изучающий C, создал простую игру на основе рэйкастера. Проект написан на C с использованием SDL и простого пиксельного буфера.
По его словам, работа над игрой была очень увлекательной, и он всерьёз полюбил программирование на C.
В сети уже доступно небольшое демо игры, а также код на GitHub. Автор приветствует любые отзывы и ревью со стороны сообщества.
👉 Новости 👉 База вопросов
По его словам, работа над игрой была очень увлекательной, и он всерьёз полюбил программирование на C.
В сети уже доступно небольшое демо игры, а также код на GitHub. Автор приветствует любые отзывы и ревью со стороны сообщества.
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
❤️🔥 Простая реализация паттерна Singleton на C.
Это настолько просто, и в то же время красиво. по крайней мере, на мой взгляд. Впрочем, можете предложить более удачный способ реализации этого паттерна на C?
👉 Новости 👉 База вопросов
Это настолько просто, и в то же время красиво. по крайней мере, на мой взгляд. Впрочем, можете предложить более удачный способ реализации этого паттерна на C?
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #Cplus
🤔 Чем векторы в С++ отличаются от массивов?
💬 Кратко:
Вектора в С++ — это динамические структуры данных, которые могут изменять свой размер, в то время как массивы имеют фиксированный размер, определяемый при их создании. |
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
💬 Кратко:
Вектора в С++ — это динамические структуры данных, которые могут изменять свой размер, в то время как массивы имеют фиксированный размер, определяемый при их создании. |
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
YeaHub
YeaHub — тренажер собеседований по IT
5000+ вопросов для подготовки к интервью. Фильтры, квизы, статистика!
Это, пожалуй, один из лучших ресурсов по GPU-программированию, что я находил — GPU Glossary от Modal. В нём сложные концепции разобраны с понятными визуализациями и объяснениями: от архитектуры CUDA до Tensor Cores и CTA.
modal.com/gpu-glossary
👉 Новости 👉 База вопросов
modal.com/gpu-glossary
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😊 std::clamp
👉 Новости 👉 База вопросов
std::clamp ограничивает значение в пределах заданного диапазона. Это полезно для валидации чисел, нормализации данных и защиты от выхода за границы.Please open Telegram to view this post
VIEW IN TELEGRAM
🤝1
#полезное
😇 В чем разница между передачей по значению и по ссылке?
При передаче по значению функция получает копию исходного параметра. Значение оригинального параметра остаётся неизменным после любых операций с этой копией внутри функции.
При передаче по константной ссылке функция получает ссылку на исходный параметр, но с пометкой const, поэтому изменить значение оригинального параметра нельзя. Без const изменение будет возможным.
👉 Новости 👉 База вопросов
При передаче по значению функция получает копию исходного параметра. Значение оригинального параметра остаётся неизменным после любых операций с этой копией внутри функции.
При передаче по константной ссылке функция получает ссылку на исходный параметр, но с пометкой const, поэтому изменить значение оригинального параметра нельзя. Без const изменение будет возможным.
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #git
🤔 Как восстановить удалённую ветку?
💬 Кратко:
Если ветка была удалена локально, её можно восстановить, используя команду
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
💬 Кратко:
Если ветка была удалена локально, её можно восстановить, используя команду
git reflog . Если ветка была удалена удалённо, можно восстановить еёс помощью git push origin ‹ branch_name›.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
#статьи
😐 История структуры данных Trie
Если вы когда-либо пользовались автодополнением или проверкой орфографии, вы уже сталкивались с Trie — одной из самых эффективных структур данных для операций с префиксами.
Trie была впервые представлена в 1960 году в статье “TRIE memory” Эдварда Фредкина. Эта работа заложила основу для всех современных реализаций Trie, которые используются в поисковых системах, словарях и приложениях с автодополнением.
Читать статью
👉 Новости 👉 База вопросов
Если вы когда-либо пользовались автодополнением или проверкой орфографии, вы уже сталкивались с Trie — одной из самых эффективных структур данных для операций с префиксами.
Trie была впервые представлена в 1960 году в статье “TRIE memory” Эдварда Фредкина. Эта работа заложила основу для всех современных реализаций Trie, которые используются в поисковых системах, словарях и приложениях с автодополнением.
Читать статью
Please open Telegram to view this post
VIEW IN TELEGRAM
#ЛитКод
Задача: 719. Find K-th Smallest Pair Distance
Расстояние между парой целых чисел a и b определяется как абсолютная разность между a и b. Учитывая целочисленный массив nums и целое число k, верните k-е наименьшее расстояние среди всех пар nums[i] и nums[j], где 0 <= i < j < nums.length.
Пример:
👨💻 Алгоритм:
1⃣ Отсортируйте массив nums.
2⃣ Определите минимальное и максимальное возможные расстояния.
3⃣ Используйте бинарный поиск, чтобы найти k-е наименьшее расстояние, проверяя количество пар с расстоянием меньше или равно текущему среднему значению.
😎 Решение:
👉 Новости 👉 База вопросов
Задача: 719. Find K-th Smallest Pair Distance
Расстояние между парой целых чисел a и b определяется как абсолютная разность между a и b. Учитывая целочисленный массив nums и целое число k, верните k-е наименьшее расстояние среди всех пар nums[i] и nums[j], где 0 <= i < j < nums.length.
Пример:
Input: nums = [1,3,1], k = 1
Output: 0
int countPairs(const vector<int>& nums, int mid) {
int count = 0, j = 0;
for (int i = 0; i < nums.size(); i++) {
while (j < nums.size() && nums[j] - nums[i] <= mid) {
j++;
}
count += j - i - 1;
}
return count;
}
int smallestDistancePair(vector<int>& nums, int k) {
sort(nums.begin(), nums.end());
int left = 0, right = nums.back() - nums.front();
while (left < right) {
int mid = (left + right) / 2;
if (countPairs(nums, mid) < k) {
left = mid + 1;
} else {
right = mid;
}
}
return left;
}Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #Cplus
🤔 Что такое чисто виртуальная функция в C++?
💬 Кратко:
Чисто виртуальная функция - это функция, которая объявлена в базовом классе, но не имеет реализации. Любой класс, который наследует этот базовый класс, должен предоставить реализацию этой функции.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
💬 Кратко:
Чисто виртуальная функция - это функция, которая объявлена в базовом классе, но не имеет реализации. Любой класс, который наследует этот базовый класс, должен предоставить реализацию этой функции.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
YeaHub
YeaHub — тренажер собеседований по IT
5000+ вопросов для подготовки к интервью. Фильтры, квизы, статистика!
#полезное
🤯 Знаете ли вы, что компилятор может удалить ваш код?
Компиляторы C всегда стараются сделать ваш код максимально быстрым. Один из инструментов для этого называется Dead Code Elimination (удаление «мертвого кода»).
Если какая-то часть кода не влияет на наблюдаемое поведение, например, вывод через printf, ввод/вывод, изменение глобального состояния — компилятор пытается безопасно её удалить.
Рассмотрим пример на изображении: если вы никогда не используете sum позже, например, никогда не выводите его, компилятор понимает, что этот цикл бесполезен. Весь цикл будет удалён.
В результате бинарник может работать значительно быстрее. Но если вы добавите printf("%d\n", sum);, компилятор сохранит этот цикл, так как он влияет на наблюдаемое поведение. Это также правило As-If.
👉 Новости 👉 База вопросов
Компиляторы C всегда стараются сделать ваш код максимально быстрым. Один из инструментов для этого называется Dead Code Elimination (удаление «мертвого кода»).
Если какая-то часть кода не влияет на наблюдаемое поведение, например, вывод через printf, ввод/вывод, изменение глобального состояния — компилятор пытается безопасно её удалить.
Рассмотрим пример на изображении: если вы никогда не используете sum позже, например, никогда не выводите его, компилятор понимает, что этот цикл бесполезен. Весь цикл будет удалён.
В результате бинарник может работать значительно быстрее. Но если вы добавите printf("%d\n", sum);, компилятор сохранит этот цикл, так как он влияет на наблюдаемое поведение. Это также правило As-If.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🤯1
Разработчик за день написал свой аллокатор памяти на C++20 с heap-буфером, first-fit, сплиттингом и коалесингом блоков, безопасными проверками и отладочным дампом, чтобы на практике разобраться, как работают ptmalloc и jemalloc
https://github.com/Abhisheklearn12/custom-memory-allocator-cpp
👉 Новости 👉 База вопросов
https://github.com/Abhisheklearn12/custom-memory-allocator-cpp
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Симуляторы помогают заглянуть «под капот» микропроцессорной архитектуры; этот конкретно хорошо показывает распределение тактов CPU.
https://creatorsim.github.io/creator/
👉 Новости 👉 База вопросов
https://creatorsim.github.io/creator/
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #git
🤔 Что такое git reflog?
💬 Кратко:
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
💬 Кратко:
git reflog показывает историю всех перемещений HEAD, включая коммиты, слияния и переключения веток. Эта команда полезна для восстановления потерянных коммитов или веток.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM