随机算法

源代码在线查看: queen.cpp

软件大小: 14 K
上传用户: l2335800
关键词: 随机 算法
下载地址: 免注册下载 普通下载 VIP

相关代码

				// Queen.cpp: implementation of the CQueen class.
				//
				//////////////////////////////////////////////////////////////////////
				
				#include "stdafx.h"
				#include "Queen.h"
				#include "RandomNumber.h"
				#include "math.h"
				//////////////////////////////////////////////////////////////////////
				// Construction/Destruction
				//////////////////////////////////////////////////////////////////////
				extern node;
				CQueen::CQueen()
				{
				
				}
				
				CQueen::~CQueen()
				{
				
				}
				bool CQueen::Place(int k)
				{
					for(int j=1;j						if((abs(k-j)==abs(x[j]-x[k]))||(x[j]==x[k]))
							return false;
					return true;
				}
				bool CQueen::QueensLV(void)
				{
					CRandomNumber rnd;
					int k=1;
					int count=1;
					node=0;
					while ((k0))
					{
						count=0;
						int j=0;
						for(int i=1;i						{
							x[k]=i;
							node++;
							if(Place(k))
								if(rnd.Random(++count)==0)
									j=i;
						}
					if(count>0)
						x[k++]=j;
					}
					return(count>0);
				}			

相关资源