C++进阶:STL算法5--随机

1. 简介

函数 作用 文档
random_shuffle(beg,end) 元素随机调整次序。 random_shuffle()
random_shuffle(beg,end,gen) 使用函数gen代替随机生成函数执行random_shuffle() random_shuffle()

2. 示例代码

  • random_shuffle
// random_shuffle example
#include      // std::cout
#include     // std::random_shuffle
#include        // std::vector
#include         // std::time
#include       // std::rand, std::srand

// random generator function:
int myrandom (int i) { return std::rand()%i;}

int main () {
  std::srand ( unsigned ( std::time(0) ) );
  std::vector myvector;

  // set some values:
  for (int i=1; i<10; ++i) myvector.push_back(i); // 1 2 3 4 5 6 7 8 9

  // using built-in random generator:
  std::random_shuffle ( myvector.begin(), myvector.end() );

  // using myrandom:
  std::random_shuffle ( myvector.begin(), myvector.end(), myrandom);

  // print out content:
  std::cout << "myvector contains:";
  for (std::vector::iterator it=myvector.begin(); it!=myvector.end(); ++it)
    std::cout << ' ' << *it;

  std::cout << '\n';

  return 0;
}

3. 练习

  1. 将一个数组随机执行几次查看结果。

你可能感兴趣的:(C++进阶:STL算法5--随机)