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

怎么免费永久创建网站无广告长沙商城网站建设报价公示

怎么免费永久创建网站无广告,长沙商城网站建设报价公示,地图网站制作,电商网站设计公司Problem: 面试题 08.12. 八皇后 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 八皇后问题的性质可以利用回溯来解决#xff0c;将大问题具体分解成如下待解决问题#xff1a; 1.以棋盘的每一行为回溯的决策阶段#xff0c;判断当前棋盘位置能否放置棋子 2.如何判… Problem: 面试题 08.12. 八皇后 文章目录 题目描述思路解题方法复杂度Code 题目描述 思路 八皇后问题的性质可以利用回溯来解决将大问题具体分解成如下待解决问题 1.以棋盘的每一行为回溯的决策阶段判断当前棋盘位置能否放置棋子 2.如何判断当前棋盘位置是否可以放置棋子 解题方法 1.回溯函数 1.1定义二维结果集resultchar类型二维数组作为棋盘并初始化 1.2当决策阶段row等于n时将当前的决策路径添加到result中注意决策阶段应该等于n时才说明将棋盘判断完了因为当决策阶段等于n时说明0 - n-1 已经判断处理完 1.3由于在每一个决策阶段我们需要对棋盘的每一列棋格判断穷举所以以每一列为循环判断调用判断当前位置是否可以添加棋子的函数若可以则先将棋盘当前位置添上棋子再回溯判断当前行的下一行判断完当前行后还需恢复当前棋盘位置的状态 2.判断当前位置是否可以添加棋子函数 2.1依次利用循环判断当前位置的列右上角左上角是否存在棋子存在则不可在当前位置添加棋子 复杂度 时间复杂度: O ( n ) O(n) O(n) 空间复杂度: O ( n ) O(n) O(n) Code class Solution {//Two-dimensional result setprivate ListListString result new ArrayList();/*** Get the solution to the Eight Queens problem** param n The size of board* return ListList String*/public ListListString solveNQueens(int n) {char[][] board new char[n][n];for (int i 0; i n; i) {for (int j 0; j n; j) {board[i][j] .;}}backtrack(0, board, n);return result;}/*** Find the solution of the eight queens problem by backtracking** param board Board* param row The row of board(The decision stage of backtracking)* param n The size of board*/private void backtrack(int row, char[][] board, int n) {//End condition:A feasible solution is foundif (row n) {ListString snapshot new ArrayList();for (int i 0; i n; i) {snapshot.add(new String(board[i]));}result.add(snapshot);return;}//Each has n ways to placefor (int col 0; col n; col) {if (isOk(board, n, row, col)) {//optional list//The chess board places pieces in row rows and col columnsboard[row][col] Q;//Investigate the next rowbacktrack(row 1, board, n);//Recover the selectionboard[row][col] .;}}}/*** Determines whether the current column can place chess pieces** param board The board* param n The row number and column number of board* param row The row number of board* param col The column number of board* return boolean*/private boolean isOk(char[][] board, int n, int row, int col) {//Check whether columns conflictfor (int i 0; i n; i) {if (board[i][col] Q) {return false;}}//Check whether top right corner conflictint i row - 1;int j col 1;while (i 0 j n) {if (board[i][j] Q) {return false;}i--;j;}//Check whether top left corner conflicti row - 1;j col - 1;while (i 0 j 0) {if (board[i][j] Q) {return false;}i--;j--;}return true;} }
http://www.dnsts.com.cn/news/40263.html

相关文章:

  • 网站建设学费多少钱网站建设合伙合同
  • 邯郸网站设计注册网页怎么做网站地图
  • 晋城市公用事业建设局网站中国建设工程信息网招标公告
  • 深圳专业建站平台seo交流论坛
  • 网站维护正常要多久广州番禺营销型网站
  • 华为企业网站建设需求分析网站建设报价比较
  • 外贸wap网站app网站建设思路
  • 好用的网站建设工具美摄短视频sdk
  • 网站购物系统制作雨辰资讯电子商务类网站开发淘客网站建设
  • 网站跟域名是什么关系工业设计专业最好的大学
  • tap自助建站昆明seo排名
  • 没有网站可以做网络推广吗电子商务网站开发系统
  • wordpress 书籍商丘做网站优化
  • 网站版权该怎么做呢巴中网站制作公司
  • 做房产的一般用哪个网站好网站做轮播图的意义
  • 怎么用phpcmf做网站网站后台 js框架
  • 重庆网站建站一站式服务淄博网络优化哪家专业
  • 优酷网站怎么做的施工企业会计分录
  • 给企业做网站的平台官方网站建设的目标
  • 台州网站设计公司网站北京云建站模板
  • 湛江仿站定制模板建站海南省建设局网站搜索
  • 岚县网站建设建设公众号网站
  • jsp做的网站建网站的公司怎么样
  • 邢台seo一站式wordpress time
  • 邢台建设厅网站有限责任公司注册资本最低限额
  • 网站服务器如何选择苏州网站建设找思创
  • 东莞网站建设制作哪家好网站开发需要的资料
  • 长沙公司做网站找哪个公司好品牌网站建设最佳大蝌蚪
  • 龙岗住房建设局网站饲料网站建设 中企动力
  • 7一12岁手工科技小制作企业网站优化方式