暴力窮舉和回溯法(八皇后問題)

2023-06-21 12:20

1個回答

以前每次遇到算法問題都是直接暴力求解,一直以為自己用的是暴力窮舉法,現(xiàn)在學(xué)了回溯法,發(fā)現(xiàn)部分問題其實(shí)使用的是回溯法,而不是單純的暴力窮舉。

例如求解一個n皇后問題:

1.使用暴力窮舉,由于沒有兩個皇后能夠放在一列上,激塵櫻那么解向量一定是數(shù)1,2,····,n的一個排列(第一行n種放法,第二行n-1種,以此類推)。時(shí)間復(fù)雜度O(n!).

為什么是一維而不是兩維?因?yàn)闆]有兩個皇后能在同一列,所以只用行標(biāo)志就可以表示出皇后的位置,簡化了問題

2.回溯法,就等于是一個一個的試,從1到n,時(shí)間復(fù)雜度O(n^n),每一行n種放法,總共n行。

看起來回溯法要比暴力窮舉差很多,但是實(shí)際上回溯法很多時(shí)候?qū)嶋H算法復(fù)雜度并沒有暴力窮舉高。比如4皇后問題中,僅需要341個可能節(jié)點(diǎn)中的27個節(jié)點(diǎn)就可以找到解,但是暴力窮舉實(shí)際會慢很多。

換一個思路,比如第一個皇后放在了0位置,暴力窮舉第二個皇后放在1位置,那么之后的皇后無論怎么放都是錯誤的,也就是(n-2)!個向量全部都是錯誤的,而回溯法面對這種問題,會在之前就直接拋棄這種兄塌情況,速度會快很多。不要問為什么暴力窮舉為什么不學(xué)回溯法那樣提前拋棄,因?yàn)樗?strong> 暴力窮舉 (這還算優(yōu)化過一次,不然直接O(n^n))。

總而言之,回溯法并不明叢需要得到所有情況,而且運(yùn)行過程中會提前拋棄不合要求的情況,所以算法復(fù)雜度一般不會到最差的情況。

相關(guān)問答
成語 窮兒暴富 的意思?
1個回答2024-02-19 16:21
窮兒暴富? 【拼音】: qióng ér bào fù 【解釋】: 窮人驟然發(fā)了大財(cái)。比喻學(xué)問大增。 【出處】: 宋·蘇軾《答程全父推官六首》:“兒子比抄得《唐書》一部,又借得《前漢》欲抄...
全文
舉例說明什么叫“窮開心”?
1個回答2022-11-18 00:12
沒有錢,但過得很快樂
溯本求源的溯是什么意思?
1個回答2024-01-21 03:44
溯本清源,意思是往上游尋找發(fā)源的地方。 一、讀音 [ sù běn qīng yuán ] 二、具體解釋 溯本清源是一個成語,原意是指往上游尋找發(fā)源的地方,實(shí)際使用中,是比喻向上尋求歷史根...
全文
求“窮兒暴富”的解釋
1個回答2024-03-03 12:14
qióng ér bào fù窮人驟然發(fā)了大財(cái)。比喻學(xué)問大增宋·蘇軾《答程父推官書》:“兒子比抄得《唐書》一部,又借得《前漢》欲抄。若了此二書,便是窮兒暴富也?!钡涔食鎏?宋·蘇軾《答程父推官書》:“...
全文
窮人的家暴概率更高
1個回答2024-03-10 23:56
或許結(jié)論是這樣的,但是請你理解其中運(yùn)作的原理,而非簡單的貼標(biāo)簽,搞歧視,那么這種人即使是富人,也不會受人尊重。 窮人家暴概率更高可能是出于受教育程度偏低,沒有形成兩性平等和尊重女性散碧的觀念。 另外貧...
全文
我好窮啊,我要如何暴富?
5個回答2023-08-08 11:53
想要暴富,就要努力學(xué)習(xí),知識改變命運(yùn),祝你成功。 成功需要,天時(shí)地利人和,為自己的成功做好鋪謹(jǐn)嫌扮墊 ,事情會得到自己想要的結(jié)果。 成功要一步一步的積累經(jīng)驗(yàn),需要耐心。不為祥灶失敗找借口,只者賣...
全文
列舉窮人思維都有哪些?
2個回答2023-03-28 19:30
富人和窮人思維的區(qū)別列舉 1、創(chuàng)業(yè)最關(guān)心的問題 富人:品牌、服務(wù)、理念、技術(shù)、合作、發(fā)展前景 窮人:價(jià)格 2、對選擇項(xiàng)目的需求 富人:高興,被人尊重 窮人:省錢又賺錢 3、對品牌的選擇 富人:...
全文
古代為什么有“窮秀才”,沒有“窮舉人”?
1個回答2022-12-12 21:46
因?yàn)樾悴攀沁€沒有考上科舉的人,貧窮的很多,而舉人一般都謀得了一些成就,不算貧窮。
古代為什么有“窮秀才”,沒有“窮舉人”?
2個回答2023-07-24 11:30
因?yàn)楣糯灰憧贾屑壛说脑捦├?,我覺得都是比較有錢的,而且他皮輪輪們的官位的話都會值很多錢,所以在古代燃信官位是很重要的。
7萬左右的吉普車
1個回答2025-02-13 17:52
您好,比亞迪-S6 6.99萬-13.58萬奇瑞-瑞虎 6.60萬-12.58萬長城-哈弗H5 7.08萬-17.28萬長城-哈弗H3 7.08萬-16.08萬長城-哈弗M2 5.09萬-8.99萬力...
全文
熱門問答