Публикации по теме 'cpp'


Ежедневный бит(е) C++ | Ограниченные подмассивы
Ежедневный бит (е) C ++ # 175, Распространенная проблема на собеседованиях: ограниченные подмассивы. Сегодня мы рассмотрим распространенную проблему интервью C++: ограниченные подмассивы. Учитывая массив целых чисел и два граничных значения, A и B , вернуть количество (непрерывных) подмассивов, для которых значение A является минимум, а значение B — максимум подмассива. Например, для массива {1,2,3,4,3} и границ [2,4] существует только два допустимых подмассива: {..

Совет по кодированию вторника 07  —  Явная специализация шаблона
Советы по кодированию по вторникам — это короткие посты о различных лакомых кусочках, в основном из C++, но также и из других языков программирования, которые я использую. Вы также можете следить за хэштегом #TuesdayCodingTips на Mastodon и Linkedin . Хотя создание экземпляра шаблона можно использовать для перемещения реализации шаблона из файлов заголовков в объектные файлы для заданного подмножества типов, специализация позволяет переопределить реализацию шаблона по умолчанию для..

LeetCode 21- Объединение двух отсортированных списков
Вопрос : Вам даны заголовки двух отсортированных связанных списков list1 и list2 . Объедините два списка в один отсортированный список. Список должен быть составлен путем соединения узлов первых двух списков. Возвращает заголовок объединенного связанного списка . Пример 1: Input: list1 = [1,2,4], list2 = [1,3,4] Output: [1,1,2,3,4,4] Ограничения: Количество узлов в обоих списках находится в диапазоне [0, 50] . -100 <= Node.val <= 100 И list1..

Ежедневный бит(е) C++ | стандартный:: порядок байтов
Ежедневный бит (е) C ++ # 130, информация о порядке следования байтов во время компиляции C ++ 20. std::endian из C++20 — это enum в заголовке ‹bit› , который предоставляет информацию о родном порядке байтов архитектуры. программа была составлена ​​для. #include <bit> #include <iostream> int main() { if constexpr (std::endian::native == std::endian::little) { std::cout << "This system is little-endian.\n"; } else if constexpr..

Ежедневный бит(е) C++ | Составление представлений C++20
Ежедневный бит (е) C++ # 172, Составление представлений C++ 20 без добавления избыточных копий. При работе с представлениями C++20 создание функций, инкапсулирующих сложные композиции представлений, может показаться заманчивым. Однако это, скорее всего, приведет к ненужным копиям данных. Вместо этого рассмотрите возможность компоновки представлений как встроенных переменных constexpr . #include <ranges> #include <cctype> constexpr inline auto trim_front =..

Параллелизм в C++: мьютексы и блокировки — часть 4
Как избежать взаимоблокировок с помощью std::lock() В большинстве случаев ваш код должен одновременно удерживать только одну блокировку мьютекса. Иногда вы можете вкладывать свои блокировки, например, вызывая подсистему, которая защищает свои внутренние данные с помощью мьютекса, удерживая блокировку на другом мьютексе, но, как правило, лучше избегать одновременной блокировки нескольких мьютексов, если это возможно. Однако иногда необходимо удерживать блокировку более чем одного..

Байт кодирования, выпуск № 135
Условные члены можно рассматривать как вещи, которые должны существовать условно в шаблоне C++20 при соблюдении определенных условий. В этой информативной статье Барри Ревзин раскрывает, как условные функции-члены, условные переменные-члены и условные типы-члены могут быть реализованы с использованием концепций C++20. Подробнее читайте на https://abyteofcoding.com/issues/a-byte-of-coding-issue-135/