第一百零九章 搭配
「回溯法又叫做試探法,實際是一種選優的方法,而這個N皇后問題,其實應該算回溯法中一個經典的案例。」孟夢一邊看著哥哥一邊解釋道。
孟響連連點頭。
請開始你的表演。
「回溯法的基本思想就是:從一條路往前走,能進則進,不能進則退回來,換一條路再試。而這實際就是窮舉出所有可能,然後從中找出滿足要求的可能或者最優的情況,從而得到解。」
孟夢說完,一邊在紙上畫著一邊說道:「我們用一個N*N的矩陣來表示棋盤,然後我們把當前行和當前列分別設為第一行和第一列。」
「矩陣那個不是沒學……」孟響小聲問道。
迎接他的是中性筆的筆尖。
彷彿他只要敢繼續說話,妹妹就會殺哥證道一樣。
他連忙閉上了嘴,腦中飛快思考。
這不就是數組嘛。
說得這麼高大上!
孟響同學心裡不服氣,但是人在筆尖下,不得不低頭。
孟夢見哥哥害怕,滿意地收回了筆,繼續給哥哥講起如果用回溯法,怎麼解N皇后問題的思路來。
教室里並不安靜,高一高二所在的前排座位,大家的議論聲,聲聲入耳,時不時還有兩人之間的不同意見的爭論聲。
高三四大天王都是孤軍奮戰,一個個正在埋頭書寫。他們選擇的方案都是先畫出模型,然後再從最簡4皇后開始往下推一兩次之後寫代碼,寫完代碼之後再慢慢優化,畢竟,這種題目他們幾乎都有練過,雖然時間可能比較久遠,但是經歷了多次大賽以及長久練習的他們,無論是經驗上還是代碼能力上,都比高一高二的學生只強不弱。
張棟樑走下講台,慢慢圍著偌大的多媒體教室轉了一圈,兩圈。看了看身旁正在討論的眾人,他覺得自己的這個職業選擇非常正確,他喜歡和學生們待在一起,更加喜歡中學的這種朝氣蓬勃。
「所以呢,這個回溯的解法基本就是這個樣子。只是,如果用不同的數據結構,或者是檢查時候的條件不同,應該效率不同。」說完后,孟夢放下了筆。
孟響聽完妹妹說的方法,沉思了幾秒鐘之後,眼前一亮。
顯然,他已經理解了這個方法的思路。
他抬起頭來,看到張老師正站在妹妹身後看著兩人的草稿紙。
「張老師好。」孟響下意識地說道。
聽到哥哥的話,妹妹嚇了一跳,回頭看到張老師正站在自己身後,連忙也跟著給老師問好。
張棟樑笑著點了點頭,他已經站在孟夢身後聽了老半天了,這個小女孩講解的思路很清晰,至少,在數學思想和演算法選擇上沒有什麼問題。
其他的,就只看怎麼寫代碼了。
雖然方法和思想上選擇是正確的,但是數據結構選擇和優化策略不當,寫出來代碼的運行效率會天差地別,甚至幾百倍上萬倍的差距。
「你們繼續,講得非常到位,好好寫代碼。」張棟樑見兩人發現了他,笑著鼓勵道,然後繼續朝後面走去。
孟夢不好意思的低下了頭,她可不會寫真代碼,而書上大部分都是偽代碼,並不影響她閱讀。
「哥哥,你聽懂了嗎?」孟夢對哥哥問道。
孟響這次很有自信地點了點頭,他看了看時間,才剛剛過去8分鐘而已。
「要不,我們也試試寫寫?」孟響有些手癢,小聲提議道。
孟夢從口袋裡掏出了一隻筆,遞給哥哥,小臉微紅,小聲說道:「可是,我不會寫代碼的。」
孟響接過筆,聽到妹妹的話之後,他又一次心理平衡了,小天才妹妹不會寫,現在就輪到他,孟·白班編程·響發揮的時候了。
「沒事,我會寫。我一邊寫一遍解釋給你聽,你幫我驗證思路有沒有錯誤,我寫,你把關。」
聽到這話,孟夢也眼前一亮。
聽上去,是個不錯的主意。
而且,她是和哥哥一起在努力!想到這,她心裡有些甜甜的。
「那好的嘛!但是,你要是代碼格式什麼的錯了,可不能賴我。」孟夢甜甜地答應之後,又說道。
「哼!放心,格式什麼的這輩子都不會錯的。」孟響同學對妹妹這種不信任自己的行為予以官方譴責!他這兩個多星期,寫了至少150張A4紙的代碼,而且還是用的雙面寫加八號字體。從一開始的錯誤百出,到現在一天都出不了幾次錯,他可是很努力的。
C語言的語法規則和基本頭函數在他眼裡,就像RB小電影里那些著名影星一樣……扯遠了。
「那我就相信哥哥一次吧。」孟夢雖然有些狐疑,但還是打心底里相信了哥哥。
兩人翻過一頁,一邊討論一邊開始寫了起來。
時間一分一秒的過去。
「李神,怎麼樣。」一個男生寫完代碼之後,把草稿紙遞給旁邊的一個高高大大的男生。他頭一天晚上才看了這個題目,此時強行靠著記憶在十多分鐘內寫了出來。雖然方法不是最好的,但是至少他們組也有個可以上交的東西了。
「我看看。」被喊為李神的男生接過草稿紙,和另外兩人一起開始細細看了起來。
……
「這個我不應該用二維數組。」高三參加集訓隊的那名學長寫完之後,心裡運算了幾次之後,立馬就看出了問題。
他使用的是二維數組來表示棋盤,但是寫的函數使用次數太多了,讓他覺得非常笨重,效率極差。
發現了問題之後,他開始第一次修改代碼。
……
「我只會遞歸,這個真沒辦法。」高二一名女生看著身邊比自己還「漂亮」幾分的男同學,有些尷尬地說道。而身旁的男生看著模擬圖解抓耳撓腮。
時間太少了,他一緊張就斷了思路。
要是能穿女裝就好了,他發現自己只要穿女裝,就有各項buff加成,30分鐘內解除這個問題並不是多麼困難。
想到這,他又一陣懊悔。
在他糾結自己就應該穿女裝時,眼前的女同學絲毫不知道他內心的危險想法。
張棟樑繞著底下又轉了一圈之後,回到了講台上,時間已經過去了15分鐘。