日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

常考数据结构与算法:N皇后问题

發(fā)布時間:2025/6/15 编程问答 14 豆豆
生活随笔 收集整理的這篇文章主要介紹了 常考数据结构与算法:N皇后问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考博客:?https://blog.csdn.net/weixin_39651041/article/details/79972829

?

題目描述

NN皇后問題是指在N*NN?N的棋盤上要擺NN個皇后,
要求:任何兩個皇后不同行,不同列也不再同一條斜線上,
求給一個整數NN,返回NN皇后的擺法數。

?

示例1

輸入

1

返回值

1

示例2

輸入

8

返回值

92

?

思路如下:

?

? 由于N皇后問題不允許兩個皇后在同一行,所以,可用一維數組X表示N皇后問題的解,X[i]表示第i行的皇后所在的列號。例如一個滿足要求的四皇后棋盤布局如下圖所示,其結果X數組的值為:[2, 4, 1, 3]。

由上述X數組求解N皇后問題,保障了任意兩個皇后不在同一行上,而判定皇后彼此不受攻擊的其他條件,可以描述如下:

(1)X[i] = X[s],則第i行與第s行皇后在同一列上。

(2)如果第i行的皇后在第j列,第s行皇后在第t列,即X[i] = j和X[s] = t,則只要i-j = s-t或者i+j = s+t,說明兩個皇后在同一對角線上。

對兩個等式進行變換后,得到結論:只要|i-s| = |j-t|(即i-s = X[i]-X[s]),則皇后在同一對角線上。

?

public class NqueenMe {int resultCount = 0;public static void main(String[] args) {//int[] queen = new int[8];NqueenMe nqueenMe = new NqueenMe();nqueenMe.Nqueen(9);System.out.println(nqueenMe.resultCount);}public int Nqueen (int n) {int[] queen = new int[n];tria(queen,0,n);return resultCount;}private void tria(int[]arr, int i, int n){if(i >= n){++resultCount;for (int j = 0; j < n; j++) {System.out.print(arr[j]+" ");}System.out.println();}else{for (int j = 0; j < n; j++) {arr[i] = j; // 第i行第j列if(place(arr, i)){// 結點滿足約束條件,則遞歸進入下一層繼續(xù)遍歷,否則跳過tria(arr, i+1, n);}}}}private boolean place(int[] arr, int s){// 判定s行X[s]位置上的皇后,與1至s-1行上各皇后的位置是否滿足約束條件for (int i = 0; i < s; i++) {// 同一列 或者 處于對角線if(arr[i] == arr[s] || (Math.abs(i-s) == Math.abs(arr[i] - arr[s]))){return false;}}return true;}}

?

?

?

總結

以上是生活随笔為你收集整理的常考数据结构与算法:N皇后问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91香蕉一区二区三区在线观看 | 亚洲精品无码久久久 | 蜜桃在线一区二区三区 | 欧美成人一区在线 | 黄片毛片在线观看 | 欧美一级片免费 | 国产一区二区毛片 | 色婷久久| 五月情网 | 玩偶姐姐在线观看免费 | 视频在线一区二区三区 | 免费午夜视频在线观看 | 成人深夜福利 | 国产中文字字幕乱码无限 | www.久久精品.com | 一个人免费在线观看视频 | www.亚洲一区二区 | 国产精品二区在线观看 | 能看的av| 欧美粗大猛烈 | 动漫美女无遮挡免费 | 国产一级久久久久毛片精品 | 青青网站| 亚洲欧美日韩精品永久在线 | 久热国产精品 | 亚洲成人av一区二区三区 | 国产淫视 | 激情福利视频 | 一对一色视频聊天a | 国产精选久久久 | 美攻壮受大胸奶汁(高h) | 久操中文 | 欧美极品少妇无套实战 | 一区二区三区精品免费视频 | 男人天堂2021 | 天天爽夜夜爽人人爽 | 欧美不卡一区二区 | 最新在线视频 | 国产色诱视频 | 亚洲欧美在线视频 | 欧美韩日一区二区 | 韩国三级黄色 | 日日干夜夜操 | 一级做a爰 | 丝袜美腿亚洲一区二区图片 | 九色网址| 成人熟女一区二区 | 开心色站| 精品动漫一区 | 国产精品免费无码 | 亚洲人成在线免费观看 | 久久发布国产伦子伦精品 | 日韩一区二区视频在线 | 国产欧美视频一区二区 | 亚洲熟女一区 | 字幕网在线观看 | 久久影院午夜理论片无码 | 成人免费视频网站在线看 | 精品国产免费人成在线观看 | 亚洲国产日韩一区无码精品久久久 | 成人性生交大片 | 多男调教一女折磨高潮高h 国内毛片毛片毛片毛片毛片 | 最好看的2018中文2019 | 成人毛片视频免费看 | 亚洲国产av一区 | 久久成人a毛片免费观看网站 | 人人玩人人干 | 久热国产在线 | 国产精品久久久久久人 | 亚洲av无码一区东京热久久 | 欧美亚洲综合一区 | 国产高清自拍视频 | 天天插综合 | 影视先锋av资源 | 欧美xxxxx高潮喷水麻豆 | 日韩黄色视屏 | 黑人精品无码一区二区三区 | 男女性生活视频网站 | 国产亚洲一区二区三区四区 | www国产精品视频 | 一区福利视频 | 国产精品一区二区欧美 | 国产午夜免费视频 | 国产精品无码久久久久久 | 五十路毛片 | 污污网站在线观看 | 在线观看日批 | 夜夜操天天| 啊灬啊灬啊灬秀婷 | 两个人做羞羞的视频 | 免费激情网 | 动漫美女隐私无遮挡 | 精品日韩在线播放 | 国产毛片欧美毛片久久久 | 成人伊人 | 成人18视频免费69 | 波多野结衣毛片 | 刘玥91精选国产在线观看 | 久久亚洲av无码精品色午夜麻豆 |