媳婦多就用分支修剪,解決婆娘紛爭,C語言經(jīng)典算法之八皇后問題
2019-03-28 18:57 作者:C語言基礎(chǔ) | 我要投稿

八皇后問題

西洋棋中的皇后可以直線前進(jìn),吃掉遇到的所有棋子,如果棋盤上有八個皇后,則這八個皇后如何相安無事的放置在棋盤上,1970年與1971年, E.W.Dijkstra與N.Wirth曾經(jīng)用這個問題來講解程式設(shè)計(jì)之技巧。
分支修剪解法
關(guān)于棋盤的問題,都可以用遞回求解,然而如何減少遞回的次數(shù)?在八個皇后的問題中,不必要所有的格子都檢查過,例如若某列檢查過,該該列的其它格子就不用再檢查了,這個方法稱為分支修剪。
相關(guān)源碼

運(yùn)行結(jié)果部分實(shí)例
No 1
Q . . . . . . .
. . . . Q . . .
. . . . . . . Q
. . . . . Q . .
. . Q . . . . .
. . . . . . Q .
. Q . . . . . .
. . . Q . . . .
標(biāo)簽: