Алгоритм shuffle
Переупорядковує елементи в заданому діапазоні [first, last) таким чином, щоб кожна можлива перестановка цих елементів мала рівну ймовірність появи.
#cpp
Code Ukraine
Переупорядковує елементи в заданому діапазоні [first, last) таким чином, щоб кожна можлива перестановка цих елементів мала рівну ймовірність появи.
#cpp
Code Ukraine
Алгоритм shuffle
Переупорядковує елементи в заданому діапазоні [first, last) таким чином, щоб кожна можлива перестановка цих елементів мала рівну ймовірність появи.
#cpp
Code Ukraine
Переупорядковує елементи в заданому діапазоні [first, last) таким чином, щоб кожна можлива перестановка цих елементів мала рівну ймовірність появи.
#cpp
Code Ukraine
🔧 Динамічні масиви в C++: коли розміру заздалегідь не знаєш
У класичних масивах розмір фіксований. А що робити, коли кількість елементів відома тільки під час виконання програми?
На допомогу приходять динамічні масиви!🧠
📌 Що це таке?
Динамічний масив — це масив, який створюється в *кучі памʼяті (heap)* за допомогою
📌 Ключові моменти:
🔹
🔹
🔹
Чому важливо?
✅ Гнучкість: можна створювати масиви будь-якого розміру під час виконання
✅ Ефективність: памʼять використовується лише при потребі
❌ Але є ризик утечок памʼяті, якщо забути
Хочеш ще зручніше? Використовуй💊
Написати пост і про вектори? Пиши в коментарі💬
#cpp #динамічниймасив #куча #памʼять #розбіркоду
Code Ukraine
У класичних масивах розмір фіксований. А що робити, коли кількість елементів відома тільки під час виконання програми?
На допомогу приходять динамічні масиви!
Динамічний масив — це масив, який створюється в *кучі памʼяті (heap)* за допомогою
new
. Його розмір можна задати під час виконання програми.🔹
new int[n]
— виділяє місце в памʼяті для n
елементів🔹
arr[i]
— доступ до елементів так само, як у звичайному масиві🔹
delete[] arr
— не забудь звільнити памʼять! 🧹Чому важливо?
delete[]
Хочеш ще зручніше? Використовуй
std::vector
— він сам керує памʼяттю і працює як динамічний масив, але без головного болю Написати пост і про вектори? Пиши в коментарі
#cpp #динамічниймасив #куча #памʼять #розбіркоду
Code Ukraine
Please open Telegram to view this post
VIEW IN TELEGRAM
📦 C++ Вектори — динамічні масиви без головного болю
Якщо динамічні масиви в C++ тебе трохи лякають через🔥
Що таке vector?
Корисні методи:
🔹
🔹
🔹
🔹
🔹
🎯 Чому це круто?
✅ Не потрібно вручну виділяти або звільняти памʼять
✅ Можна легко змінювати розмір
✅ Ітерація, сортування, копіювання — усе підтримується стандартними методами
📌 Коли використовувати `vector`?
— Якщо не знаєш наперед кількість елементів
— Якщо хочеш простий, зрозумілий та безпечний масив
— Якщо треба передавати масив як параметр функції (вектор це спрощує)
🧠
👀 Якщо хочете глибше? Напишу пост окремо про вектори 2D, сортування і пошук!
#cpp #вектори #stdvector #програмування #розбіркоду
Code Ukraine
Якщо динамічні масиви в C++ тебе трохи лякають через
new
, delete
та управління памʼяттю — знайомся з `std::vector`. Це — динамічний масив 2.0, де все робиться зручно, безпечніше і читабельніше Що таке vector?
std::vector
— це контейнер із стандартної бібліотеки, який автоматично змінює свій розмір у процесі виконання.Корисні методи:
🔹
push_back(x)
— додає елемент в кінець🔹
pop_back()
— видаляє останній елемент🔹
size()
— повертає кількість елементів🔹
clear()
— очищає вектор🔹
empty()
— перевіряє, чи порожній🎯 Чому це круто?
— Якщо не знаєш наперед кількість елементів
— Якщо хочеш простий, зрозумілий та безпечний масив
— Якщо треба передавати масив як параметр функції (вектор це спрощує)
std::vector
— один з найзручніших інструментів у C++. Якщо тільки починаєш — бери в руки вектор і не парся з new/delete
.#cpp #вектори #stdvector #програмування #розбіркоду
Code Ukraine
Please open Telegram to view this post
VIEW IN TELEGRAM
🧩 C++: 2D-вектори, сортування та пошук — усе, що треба знати
Хочеш зробити таблицю, матрицю або шахову дошку в C++? Тобі точно знадобиться двовимірний вектор. А ще — знати, як його сортувати і шукати в ньому значення💡
📌 Перебір 2D-вектора:
📌 Сортування рядків вектора:
📌 Сортування кожного рядка:
🔍 Пошук елемента в 2D-векторі:
🎯 Коли використовувати 2D-вектори?
✅ Для роботи з матрицями, таблицями, графами
✅ Коли не знаєш розміри наперед — вектори гнучкі
✅ Для задач на ЗНО, алгоритмах (DFS/BFS) і просто структури даних
2D-вектори — потужна і зручна альтернатива масивам. А з
Хочете приклад про 2D-матрицю в грі або графі? Пишіть в коментарях! 🔍🧠
#cpp #вектор #двовимірнийвектор #сортування #пошук #структуриданих #матриці
Code Ukraine
Хочеш зробити таблицю, матрицю або шахову дошку в C++? Тобі точно знадобиться двовимірний вектор. А ще — знати, як його сортувати і шукати в ньому значення
for (int i = 0; i < matrix.size(); i++) {
for (int j = 0; j < matrix[i].size(); j++) {
cout << matrix[i][j] << " ";
}
cout << endl;
}
#include <algorithm>
sort(matrix.begin(), matrix.end()); // сортує за першим елементом у кожному рядку
for (auto &row : matrix) {
sort(row.begin(), row.end());
}
int target = 7;
bool found = false;
for (const auto &row : matrix) {
if (find(row.begin(), row.end(), target) != row.end()) {
found = true;
break;
}
}
cout << (found ? "Знайдено!" : "Не знайдено!");
🎯 Коли використовувати 2D-вектори?
2D-вектори — потужна і зручна альтернатива масивам. А з
sort()
і find()
з STL — ще й мега-прості у використанні.Хочете приклад про 2D-матрицю в грі або графі? Пишіть в коментарях! 🔍
#cpp #вектор #двовимірнийвектор #сортування #пошук #структуриданих #матриці
Code Ukraine
Please open Telegram to view this post
VIEW IN TELEGRAM
У багатьох іграх (шахи, змійка, лабіринти, платформери) — все починається з двовимірної матриці. Це сітка, де кожна клітинка — окремий об'єкт: гравець, ворог, стіна або пусте місце. Давай подивимось, як таку систему можна реалізувати на C++
Створимо просту карту:
🧱
#
— стіна⬜️
.
— вільне місце🧍
P
— гравець— Змінювати позицію гравця при натисканні клавіш
— Перевіряти, чи можна кудись рухатись
— Генерувати карту випадково
— Додавати ворогів, предмети і вихід з рівня
* Лабіринт із DFS/BFS
* Платформер
* ASCII-гра з перешкодами
* Змійка
* Покрокова тактична стратегія
Пишіть в коментарях — зробимо серію міні-проєктів на цій базі!
#cpp #2dгра #матриця #геймдев #ascii #платформер #snake #алгоритми #приклади
Code Ukraine
Please open Telegram to view this post
VIEW IN TELEGRAM