random_shuffle.cpp

来自「STL变易算法」· C++ 代码 · 共 32 行

CPP
32
字号
// random_shuffle.cpp : 定义控制台应用程序的入口点。
//  [2009/5/3/15:47 wxf]
//////////////////////////////////////////////////////////////////////////
//	随机抖动算法对容器元素进行随机的排列,有如下两个使用原型,将迭代器区间
//	[first,last)上元素用C标准的伪随机函数rand或自定义的rand随机数发生器函
//	数对象,重新排列区间元素。这样的排列,当然有(last-first)!种可能。
//////////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include <algorithm>
#include <iostream>
using namespace std;

void print(int x){
	cout<<x<<" ";
}

int _tmain(int argc, _TCHAR* argv[])
{
	int iArray[10] = {1,2,3,4,5,6,7,8,9,10};
	cout<<"随机抖动iArray三次"<<endl;

	for (int i = 0; i!= 3; ++i)
	{
		random_shuffle(iArray,iArray+10);
		for_each(iArray,iArray+10,print);
		cout<<endl;
	}
	system("pause");
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?