為解決問題而選擇數據結構的三步:
一.分析問題以確定任何算法均會遇到的資源限制.
二.確定必須支持的基本運算,并度量每種運算所受的資源限制.基本運算的實例包括向數據結構中插入一個數據項,從數據結構中刪除一個數據項和查找指定的數據項.
三.選擇最接近這些開銷的數據結構.
ADT 抽象數據類型
它是指基于邏輯類型的數據類型以及這個類型上的一組操作,每一個操作由它的輸入和輸出定義.一個ADT的定義并不涉及它的實現細節,這些實現細節對于ADT的用戶是隱藏的.
隱藏實現細節的過程稱為封裝.數據結構是ADT的物理實現,ADT的每一個操作均由一個或者多個子程序來實現.
問題:即對應一組輸入就有一組相應的輸出.問題的定義不能包含有關怎么樣解決問題的限制.只有在問題被準確定義并完全理解后才能研究問題的解決方法.問題的定義應該包含對任何可行方案所需資源的限制.
算法:算法是指解決問題的一種方法或者一個過程.一個問題可以用多種算法來解決.一個給定的算法解決一個特定的問題.
一個算法應該包含如下性質:
一.正確性.
二.具體步驟.
三.確定性.
四.有限性.
五.可終止性.
程序:一個計算機程序被認為是使用某種程序設計語言對一個算法的具體實現.
posted @
2011-06-27 14:19 coolnothing 閱讀(365) |
評論 (0) |
編輯 收藏