当前位置: 首页 > news >正文

汽车网站建设的基本功能南昌网站建设公司渠道

汽车网站建设的基本功能,南昌网站建设公司渠道,网站建设需要多少钱小江,小程序怎么删除文章目录1. 回溯算法思想2. 算法应用2.1 八皇后问题1. 回溯算法思想 前面讲过贪心算法并不能保证得到最优解#xff0c;那怎么得到最优解呢#xff1f; 回溯思想#xff0c;有点类似枚举搜索。枚举所有的解#xff0c;找到满足期望的解。为了有规律地枚举所有可能的解那怎么得到最优解呢 回溯思想有点类似枚举搜索。枚举所有的解找到满足期望的解。为了有规律地枚举所有可能的解避免遗漏和重复把问题求解的过程分为多个阶段。每个阶段我们都会面对一个岔路口我们先随意选一条路走当发现这条路走不通的时候不符合期望的解就回退到上一个岔路口另选一种走法继续走。 2. 算法应用 2.1 八皇后问题 有一个8×8的棋盘希望往里放8个棋子皇后每个棋子所在的行、列、对角线都不能有另一个棋子。请找到所有满足这种要求的放棋子方式。 把这个问题划分成8个阶段依次将8个棋子放到第一行、第二行、第三行。。。第八行放置的过程中不停地检查当前的方法是否满足要求如果满足则跳到下一行继续放置棋子如果不满足那就再换一种方法继续尝试如果一整行都不能放下一颗那么这种方法无效退到上一行上一行列位置1再往下尝试 从0,0位置开始放置 下标5的行走到最后也没有放下这颗棋子都不满足那么退到下标4的行列位置1从4列开始新的尝试 下标5的行容不下一颗棋子再次回退下标4行退到最后了再往上退下标3行棋子往右挪 下标7行放不下退到6行 6行也容不下棋子接着看5行 5行也不可以容下棋子看第4行。。。第一种可行解怎么还没出来好累就到这里吧大家自行 ppt 画个图配合代码推一下就理解了 第一个解是这样的哈哈挪了好长时间终于出来了 /*** description: 回溯算法--八皇后问题* author: michael ming* date: 2019/7/7 0:10* modified by: */ #include iostream using namespace std; class EightQueen {int result[8];//下标表示行值表示queen在哪一列void printQueens(int *result){int i,r,c,flag 1;cout ;for(i 0; i 8; i)cout ▁;cout endl;for(r 0; r 8; r){cout ┃;for(c 0; c 8; c){if(result[r] c)cout ★;else{if(flag 0)cout ;elsecout ■;}flag -1*flag;}cout ▏ endl;flag -1*flag;}cout ;for(i 0; i 8; i)cout ▔;cout endl;}bool isOk(int r, int c)//判断在r行c列放置是否可以满足要求{int leftup c - 1, rightup c 1;for(int i r - 1; i 0; --i)//逐行向上考察每一行{if(result[i] c)//第i行的c列有棋子吗return false;if(leftup 0)//考察左上对角线{if(result[i] leftup)//第i行leftup列有棋子吗return false;}if(rightup 8)//考察右上对角线{if(result[i] rightup)//第i行rightup列有棋子吗return false;}--leftup; rightup;}return true;} public:int kinds; //可行布局种类EightQueen():kinds(0){}void cal8queens(int row) //调用方式cal8queens(0){if(row 8) //8个棋子都放置好了打印结果{kinds;cout 第 kinds 种放法 endl;printQueens(result);return;//都放置好了没法再递归了}for(int column 0; column 8; column)//每行有8种放法{if(isOk(row,column)) //该放法满足要求{result[row] column;//第row行的棋子放到了column列cal8queens(row1); //考察下一行}}}}; int main() {EightQueen eq;eq.cal8queens(0);cout 共有 eq.kinds 种摆放方法。 endl;return 0; }
http://www.yutouwan.com/news/332726/

相关文章:

  • 装修网站怎么做的好处上海工信部网站备案
  • 如何再网站上做免费广告词开发公司交房前期的各项准备工作
  • 徐州专业网站seo外贸网站怎么做外链
  • 南京模板做网站苏州网站优化找哪家
  • 100个免费货源网站wordpress 获取当前页面名称
  • 如何用html在公司的网站上添加栏目路径竞价托管外包代运营
  • 新郑郑州网站建设网上购物最便宜的网站
  • 中国软件公司有哪些seo服务平台选择
  • 建站服务建设工程教育网官方网站
  • 新市网站建设银锭网那个网站做的 好
  • 做素材网站赚钱吗wordpress悬浮电话插件
  • 网站建设辶首选金手指十五建设一个企业网站要多少钱
  • 台州网站建设技术外包后台管理系统页面模板
  • 合肥网站运营丹灶网站制作
  • 公司如何建设一个网站接外贸单的平台
  • 做网站哪个地方需要钱HTML转WordPress主题
  • 网站建设列表网杭州建设局
  • 福清营销型网站建设方案网站建设会计分录
  • 住房和城乡建设部网站办事大厅里边国内永久免费crm系统app
  • 广告投放网站平台中铁建设门户网登录入口在哪
  • 海派虫网站推广软件如何自己设计一个网页
  • 网站建设快速便宜个人注册域名和公司注册域名区别
  • 学网站制作企业微网站怎么做
  • 敦煌网的网站推广方式全国工程信息网
  • 公司网站开发怎么做网站设置手机版
  • 睢宁做网站二级网站建设思路
  • 地方门户网站推广方法有那些wordpress 音乐主题
  • 以前在线做预算的网站thinkphp仿wordpress
  • 怎样做网站全屏代码广州越秀区租房信息网
  • 良乡网站建设公司绵阳网站建设哪家好