自頂向下,逐步求精

●自頂向下

  是將複雜、大的問題劃分爲小問題,找出問題的關鍵、重點所在,然後用精確的思維定性、定量地去描述問題。

  

●逐步求精

  是將現實世界的問題經抽象轉化爲邏輯空間或求解空間的問題。複雜問題經抽象化處理變爲相對比較簡單的問題。經若干步抽象(精化)處理,最後到求解域中只是比較簡單的編程問題。

  

  簡單來說,“自頂而下,逐步求精”這是一種分解複雜任務的方法。學會分解任務,超級大分爲大的、中的、小的、超小的,直到能用很直接的方法解決。是程序設計裏面很經典的方法。**

  

●經典例子

驗證哥德巴赫猜想

(任何一個大於等於4的偶數均可以表示爲兩個素數之和)

  
第一步 設一上限數M,驗證從4到M的所有偶數是否能被 分解爲兩個素數之和。
1. 定義一個變量X,初值爲4。
2. 每次令其加2,並驗證X能否 被分解爲兩個素數之和,直到 X不小於M爲止。

第二步 如何驗證X是否能被分解爲兩個素數之和。
1. 從P=2開始;
2. 判別X—P是否仍爲素數:
3. 若是,打印該偶數的分解式。
4. 否則,換更大的素數,再繼續執行2.。如此循環,直到用於檢測的素數大X/2且X 與其之差仍不是素數,則打印“哥德巴赫猜想”不成立。

第三步 查找下一個素數。
1.當前素數P加1
2.判別P是否是素數;
3.若是素數,返回P;
4.否則,P加1,繼續執行( 2)。

經過三步分解精化,將“驗證哥德巴赫猜想”這個命題已經分解爲計算機可以求解的數學模型了。

免責聲明:本博客借鑑了部分博主的文章,以及查閱了一些相關資料而成,如有侵權,即刻刪除。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章