如何設計演算法,演算法設計原則是什麼

2025-02-16 01:35:14 字數 1804 閱讀 9762

演算法設計原則是什麼?

1樓:百科達人小張張

原則:首先說設計的演算法必須是"正確的",其次應有很好的"可讀性",還必須具有"健壯性",最後應考慮所設計的演算法具有"高效率與低儲存量"。

所謂演算法是正確的,除了應該滿足演算法說明中寫明的"功能"之外,應對各組典型的帶有苛刻條件的輸入資料得出正確的結果。

在演算法是正確的前提下,演算法的可讀性是擺在第一位的,這在當今大型軟體需要多人合作完成的環境下是換重要的,另一方面,晦澀難讀的程式易於隱藏錯誤而難以除錯。演算法的效率指的是演算法的執行時間,演算法的儲存量指的是演算法執行過程中所需最大儲存空間。

演算法是程式設計的另乙個不可缺的要素,因此在討論資料結構的同時免不了要討論相應的演算法。這裡有兩重意思,即演算法中的操作步驟為有限個,且每個步驟都能在有限時間內完成。

確定性表現在對演算法中每一步的描述都沒有二義性,只要輸入相同,初始狀態相同,則無論執行多少遍,所得結果都應該相同。

可行性指的是,序列中的每個操作都是可以簡單完成的,其本身不存在演算法問題,例如,"求x和y的公因子"就不夠基本。

輸入值即為演算法的操作物件,但操作的物件也可以由演算法自身生成,如"求100以內的素數",操作物件是自然數列,可以由變數逐個增1生成。

演算法的健壯性指的是,演算法應對非法輸入的資料作出恰當反映或進行相應處理,一般情況下,應向呼叫它的函式返回乙個表示錯誤或錯誤性質的值。

設計演算法的原則

2樓:惠企百科

1、正確性:演算法的正確性是指演算法至少應該具有輸入、輸出和加工處理無歧義性、能正確反映問題的需要、能夠得到問題的正確答案。

2、可讀性:設計演算法的目的,一方面是為了讓計算機執行,但還有乙個重要的目的就是為了便於他人的閱讀,讓人理解和交流,自己將來也可閱讀。如果可讀性不好,時間長了自己都不知道寫了什麼,可讀性是評判演算法(也包括實現它的程式**)好壞很重要的標誌。

3、健壯性:當輸入的資料非法時,演算法應當恰當地做出反應或進行相應處理,而不是莫名其妙的輸出結果。並且處理出錯的方法不應是中斷程式的執行,而應是返回乙個表示錯誤或錯誤性質的值,以便於在更高的抽象層次上進行處理。

4、高效率與低儲存量:通常,演算法的效率指的是演算法的執行時間;演算法的儲存量指的是演算法執行過程中所需要的最大儲存空間,兩者的複雜度都與問題的規模有關。演算法分析的任務是對設計的每乙個具體的演算法,利用數學工具,討論其複雜度,**具體演算法對問題的適應性。

演算法的常用設計方法有哪些

3樓:淵源

演算法設計是一件非常困難的工作,經常採用的演算法設計技術主要有迭代法、窮舉搜尋法、遞推法、貪婪法、回溯法、分治法、動態規劃法等等。

另外,為了更簡潔的形式設計和藐視演算法,在演算法設計時又常常採用遞迴技術,用遞迴描述演算法。

如何才能設計出優秀的演算法

4樓:衛戍邊疆

資料結構中評價乙個好的演算法,應該從四個方面來考慮,分別是:

一、演算法的正確性。

二、演算法的易讀性。

三、是演算法的健壯性。

四、是演算法的時空效率(執行)。

演算法的設計取決於資料(邏輯)結構,演算法的實現取決於所採用的儲存結構。資料的儲存結構本質上是其邏輯結構在計算機儲存器中的實現。為了充分反映資料的邏輯結構,它在記憶體中的映像包括兩個方面,即資料元素之間的資訊和資料元素之間的關係。

不同的資料結構有相應的操作。資料操作是定義在資料邏輯結構上的操作演算法,如檢索、插入、刪除、更新和排序。

5樓:蟻楠

腦袋裡要有成千上萬個演算法案例 融會貫通。

引物的設計原則引物設計的原則是什麼?

1 長度 15 30bp,其有效長度 ln 2 g十c 十 a十t 一般不大於38,否則pcr的最適延伸溫度會超過taq酶的最佳作用溫度 74度 從而降低產物的特異性。2 g十c含量 應在40 一60 之間,pcr擴增中的復性溫度一般是較低tm值引物的tm值減去5 10度。引物長度小於20時,其tm...

設計演算法,求出方程ax b 0的解,畫出演算法流程圖並寫出程式

演算法流程復圖如右圖 制 程式如下 input a,b if a 0 then print x b a else if b 0 then print 無解 else print 任意實數 end if end ifend 設計乙個求解一般二元一次方程組的演算法,並畫出程式框圖 分析 根據加法消元法,...

設計演算法 已知數列 an 滿足a n 1 3an 1且a1 1,求a100的值 20

設計演算法 已知數列 an 滿足a n an 且a ,求a的值 迭代法。已知an n a n n n n a 附帶介紹 特徵根法求遞推式sa n ta n ba n 的通項,s,t,b是已知常數。解方程sx tx b 得兩根x,x.設an c x n c x n 把a a代入上述方程知c c a,c ...