下面是用回溯法求解馬的周游問題的算法;空白處應(yīng)填?
馬的周游問題:給出一個(gè)n*n棋盤,已知一個(gè)中國(guó)象棋馬在棋盤上的某個(gè)起點(diǎn)位置(x0,y0),求一條訪問每個(gè)棋盤格點(diǎn)恰好一次,最后回到起點(diǎn)的周游路線。(設(shè)馬走日字。)
算法HORSETRAVEL
輸入:正整數(shù)n,馬的起點(diǎn)位置x0,y0),1<=x0,y0<=n。
輸出:一條從起點(diǎn)始訪問n*n棋盤每個(gè)格點(diǎn)恰好一次,最后回到起點(diǎn)的周游
路線;若問題無解,則輸出nosolution。
您可能感興趣的試卷
你可能感興趣的試題
最新試題
序列(1,7,3,4,9,2,3)的最長(zhǎng)遞增子序列的長(zhǎng)度為()。
回溯法采用的搜索策略是()。
在對(duì)Dijkstra算法進(jìn)行初始化時(shí),如果兩個(gè)頂點(diǎn)之間沒有邊,則它們之間的距離為()。
將長(zhǎng)度分別為m,n的兩個(gè)單鏈表合并為一個(gè)單鏈表的時(shí)間復(fù)雜度為O(m+n)。
有一個(gè)問題的蒙特卡洛算法,給定一個(gè)實(shí)例,已知運(yùn)行一次其答案是錯(cuò)誤的概率是1/8,現(xiàn)運(yùn)行k次該算法,其答案一直不變,問該答案的正確率是()。
在隊(duì)列式分支限界法解決裝載問題時(shí),為什么在其改進(jìn)算法中,每次進(jìn)入左分支都要檢查更新bestw,而不是等搜索到達(dá)葉子結(jié)點(diǎn)時(shí)才去更新bestw,其目的是什么?()
有這樣一種算法,運(yùn)行一次一定能找到問題的解,有時(shí)不知其是否正確,可以確定的是該解高概率(大于50%)是正確的。這種算法是()。
在N皇后問題中,需要將棋盤當(dāng)做一個(gè)二維數(shù)組來分析,對(duì)于該二維數(shù)組,以下說法正確的是()。
關(guān)于分支限界法的基本思想,下列描述正確的是()。
0-1背包問題與部分背包問題的區(qū)別在于()。