八皇后问题的高效解法-递归版 (转)

八皇后问题递归解法
本文介绍了一种解决八皇后问题的递归算法,并通过Java实现。该算法通过逐行放置皇后并验证安全性来寻找所有可能的解决方案,展示了完整的代码实现及运行结果。
八皇后问题的高效解法-递归版 (转)[@more@]

// Yifi  2003  have fun!  : )

//8 Queen 递归算法
//如果有一个Q 为 chess[i]=j;
//则不安全的地方是 k行  j位置,j+k-i位置,j-k+i位置

class Queen8{


  static final int QueenMax = 8;
  static int oktimes = 0;
  static int chess[] = new int[QueenMax];//每一个Queen的放置位置


  public static void main(String args[]){
  for (int i=0;i  placequeen(0);
  System.out.println(" 八皇后共有"+oktimes+"个解法  made by yifi 2003");
  }


  public static void placequeen(int num){ //num 为现在要放置的行数
  int i=0;
  boolean qsave[] = new boolean[QueenMax];
  for(;i 
  //下面先把安全位数组完成
  i=0;//i 是现在要检查的数组值
  while (i  qsave[chess[i]]=false;
  int k=num-i;
  if ( (chess[i]+k >= 0) && (chess[i]+k < QueenMax) ) qsave[chess[i]+k]=false;
  if ( (chess[i]-k >= 0) && (chess[i]-k < QueenMax) ) qsave[chess[i]-k]=false;
  i++;
  }
  //下面历遍安全位
  for(i=0;i  if (qsave[i]==false)continue;
  if (num  chess[num]=i;
  placequeen(num+1);
  }
  else{ //num is last one
  chess[num]=i;
  oktimes++;
  System.out.println("这是第"+oktimes+"个解法 如下:");
  System.out.println("第n行:  1 2 3 4 5 6 7 8");
 
  for (i=0;i   String row="第"+(i+1)+"行:  ";
   if (chess[i]==0);
   else
  for(int j=0;j  row+="++";
  int j = chess[i];
  while(j   System.out.println(row);
  }
  }
  }
  //历遍完成就停止
  }
}

 

我做的一个此问题的优化算法。 请大家多多发表意见哦 :)

Mailto:yifi@tom.com">mailto:yifi@tom.com


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10752043/viewspace-961049/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10752043/viewspace-961049/

内容概要:本文介绍了一个基于Matlab的综合能源系统优化调度仿真资源,重点实现了含光热电站、有机朗肯循环(ORC)和电含光热电站、有机有机朗肯循环、P2G的综合能源优化调度(Matlab代码实现)气(P2G)技术的冷、热、电多能互补系统的优化调度模型。该模型充分考虑多种能源形式的协同换与利用,通过Matlab代码构建系统架构、设定约束条件并求解优化目标,旨在提升综合能源系统的运行效率与经济性,同时兼顾灵活性供需不确定性下的储能优化配置问题。文中还提到了相关仿真技术支持,如YALMIP工具包的应用,适用于复杂能源系统的建模与求解。; 适合人群:具备一定Matlab编程基础和能源系统背景知识的科研人员、研究生及工程技术人员,尤其适合从事综合能源系统、可再生能源利用、电力系统优化等方向的研究者。; 使用场景及目标:①研究含光热、ORC和P2G的多能系统协调调度机制;②开展考虑不确定性的储能优化配置与经济调度仿真;③学习Matlab在能源系统优化中的建模与求解方法,复现高水平论文(如EI期刊)中的算法案例。; 阅读建议:建议读者结合文档提供的网盘资源,下载完整代码和案例文件,按照目录顺序逐步学习,重点关注模型构建逻辑、约束设置与求解器调用方式,并通过修改参数进行仿真实验,加深对综合能源系统优化调度的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值