1. 程式人生 > >(資料結構)第一章 緒論

(資料結構)第一章 緒論

1.1 計算機與演算法

1.1.1 計算

計算首先是我們這門課程的直接研究物件和內容,也是我們這門課程的研究目的和目標。

物件:規律、一般性方法、技巧

目標:高效計算、低耗

  • 繩索計算機

要求:通過直線l上給定的點A,作該直線的垂線。

過程:

計算機:長度為12 的繩索。

計算:重複機械的完成以上的過程。

  • 尺規計算機

輸入:任給平面上線段AB

輸出:將其三等分的C和D點。

演算法:

1.1.2 什麼是演算法?

基於特定的計算模型,解決某一資訊處理問題而設計的一個指令序列。

  • 演算法具備的要素:
  1. 輸入與輸出。
  2. 基本操作、確定性與可行性。演算法的確定性和可行性是指,演算法應可描述為若干語義明確的基本操作組成的指令序列,且每一基本操作在對應的計算模型中均可兌現。
  3. 有窮性和正確性。任意演算法都應該在執行有限次基本操作之後終止並給出輸出。
  4. 起泡排序。單調性和不變性可概括為:經過k趟掃描交換之後,最大的前k個元素必然就為;經過k趟掃描交換之後,待求解問題的有效規模將縮減至n-k。
  5. 退化與魯棒性。魯棒性就是要求