頂點小說網->都市->重生IT大亨->章節

第六十五章 演算法和程式完成

熱門推薦: 劍仙三千萬 宇宙級寵愛 都市國術女神 諸天新時代 從嚮往開始制霸娛樂圈 特種兵之戰狼崛起 食物鏈頂端的猛獸 我有一座天地當鋪 我真不是魔神 女配她天生好命

下面會將粗略的演算法流程圖,發給大家,大家可以提出修改意見。

相信大家也已經注意到了,招待所的每一個房間裡,都分配了一臺電腦,並且都已經連線上了網際網路,有什麼需求請直接告訴樓道口的保安。

在此期間的所有事情,都是保密的,未經許可,絕對不可以和外界聯絡,不能外出,不允許外來的訪客,招待所處於封閉狀態。

講解者說完後,就要轉身離開,一名保安攔住他,指了指張毅,耳語了一番。

他馬上轉身走回到張毅身邊,客氣的問道:“這位同學,你帶著手機是嗎?”

“是的!”張毅邊回答,邊拿出了手機。

“不好意思,手機我們暫時幫你保管可以嗎?”

張毅看到這樣的情景,心裡止不住的吐槽:我可以說不嗎?

聳了聳肩膀,關掉手機,遞給對方。

拿到這部手機時,講解者有些詫異,很明顯的,這部手機有別於市面上的,那種超級大磚頭,顯得小巧玲瓏多了,相信也價格不菲,真是看不出,這麼小的年齡的大學生,就能買這麼好的手機,想來,是一名富二代吧!

就在講解人即將轉身離開時,張毅突然問道:“如果能快速完成這個程式的話,是不是就能早點離開?”

“當然,早一點完成,咱們的時間就更充裕,成功的可能性就越大,給國家造成的損失就越小。”

看著面前這名稍顯稚嫩,但自信滿滿的面孔,講解者怔了怔,難道他能很快的解決這個大麻煩嗎?不太可能吧!

張毅看著漸漸遠去的講解者,禁不住輕鬆的笑了笑:對你們來說,這可能是個大難題。對我來說,呵呵!

拿著下發的檔案,他仔細看了一遍,對於現在的他來說,儘管還做不到過目不忘,但也差不多了,裡面的演算法和變數說明,他基本全部記了下來。

演算法採用了枚舉法,最基本的演算法之一,列舉演算法的思想是:將問題的所有可能的答案一一列舉,然後根據條件判斷此答案是否合適,保留合適的,丟棄不合適的。

在C語言中,列舉演算法一般使用while迴圈實現。使用列舉演算法解題的基本思路如下:確定列舉物件、列舉範圍和判定條件。 逐一列舉可能的解,驗證每個解是否是問題的解。

【目前用下來,聽書聲音最全最好用的App,集成4大語音合成引擎,超100種音色,更是支持離線朗讀的換源神器,huanyuanapp.org 換源App】

枚舉法是能解決問題,但問題是,這種演算法的效率太低,追求的是精確值。

關鍵是碎片的數量太多,如果靠這種精確的計算的話,等撞擊發生了,計算還未必能完成。

上面要求的,並不是完全避免撞擊,只是利用有限的衛星燃料,進行最小幅度的變軌,規避對衛星傷害最大的撞擊。所以枚舉法沒問題,但不適合做為計算天體執行程式的基礎演算法。

腦海中,在已經開發的腦域中,腦波搜尋如雷達一般,不斷的快速掃描著。

演算法有很多,但卻未必適合現在的情況,無論怎麼說,枚舉法是絕對不符合要求的。

有了,這種演算法不錯,在github的浩如煙海的原始碼庫中,他找到了一種合適的演算法。

貪心演算法:從問題的某一個初始解出發,逐步逼近給定的目標,以便儘快求出更好的解。當達到演算法中的某一步不能再繼續前進時,就停止演算法,給出一個近似解。這個近似解就無限接近於精確值。

首先建立數學模型來描述問題。然後把求解的問題分成若干個子問題。對每一子問題求解,得到子問題的區域性最優解。把子問題的區域性最優解合併成原來解問題的一個解。

這樣的演算法,最大限度的利用計算機多執行緒的效能,以最快的速度來解決問題。最是適合現在這種狀況。

拿出稿紙,速度飛快的,完成了演算法的流程圖。

有了演算法,就有了程式的靈魂。考慮到天體執行時的差之毫釐,謬之千裡,軌道的引數變數都採用了雙精度浮點型,最大程度的保證了計算的精確性。

開啟計算機,執行桌面上早已經安裝好的Tubor C編譯器,並沒有直接開始寫源程序,只是新建了一個.h的庫檔案,把腦域開發中,得到的一個計算天體執行的庫檔案,幾乎如複製一般,將腦海中搜尋到的程式碼,復制到眼前的計算機上,檢查了一遍後,習慣性的做了加密和反編譯處理。

有了這個庫檔案,幾乎所有天體執行時,所需要的函式都一一包含在內,他要做的,只是確定變數,呼叫庫函數,完成程序框圖所要求的功能。就像寫文章,提綱和框架都齊全了,無非就是用語言讓它血肉豐滿起來而已。

程式編寫的如行雲流水一般。不到一天的時間,就基本處於完成狀態了。

考慮到程式BUG會造成的嚴重後果,張毅小心翼翼的,用自己的測試程序,嚴格測試了很多遍,修正了一些潛在的BUG,儘管這些BUG,基本不可能會出現,但不怕一萬,就怕萬一。

事實上,依他現在的腦域開發水平,和超強的記憶力,再加上遠超所有人的C語言程式設計水平,不太可能會出現程式BUG。

儘管已經完成了程式,他卻並沒有提交上去,這麼快的速度解決問題,上面會不會把自己當小白鼠一樣給解剖了,還是安全第一。

剛好利用多餘的時間,張毅完成了教育版的微硬輸入法,和教育版的微硬壓縮軟件。

從天南地北聚集過來的攻關小組,每天依舊是早晨開會,討論演算法,交流進度。

張毅每次會議都會參加,還積極的拿著稿紙,不時的記錄。感覺像是一名認真學習的學生一般,只會亦步亦趨,絲毫沒有表現出自己的特別。

稿紙上,寫著一堆軟體內容,包括畫圖軟體,音樂和影片播放器,辦公軟體,進銷存系統,一體式整合程式設計軟體IDE,圖書閱讀器等等的,完全和會議內容風牛馬不相及。

上面要求的演算法和軟體都已經完成的情況下,來這裡聽會議,純粹是完全的浪費時間,但兩世為人的他明白,木秀於林,風必摧之,他來這裡,可不是為了出風頭,沒事找事的。

相關推薦:死亡街機廳原神:我真沒想當風神原神:開局向雷神發起御前決鬥傳奇之超級法師啟光中學有個籃球隊末世變形金剛秦時明月之大反派系統戰國風雲之秦時雨鐵器時代校園最強狂少