Как перемешать vector в c++?

Пользователь

от sherwood_littel , в категории: JavaScript , 8 месяцев назад

Как перемешать vector в c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от eudora , 8 месяцев назад

@sherwood_littel 

Для перемешивания элементов вектора в языке C++ можно использовать функцию std::shuffle() из библиотеки <algorithm>. Вот пример, показывающий, как это сделать:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include 
#include 
#include 
#include 

int main() {
  std::vector vec{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

  // Создаем генератор случайных чисел
  std::random_device rd;
  std::mt19937 g(rd());

  // Перемешиваем элементы вектора
  std::shuffle(vec.begin(), vec.end(), g);

  // Выводим перемешанный вектор
  for (const auto& num : vec) {
    std::cout << num << " ";
  }

  return 0;
}


Этот код создает вектор чисел от 1 до 10, затем перемешивает его и выводит на экран перемешанный результат.