1. 資料結構的概念

資料結構(Data Structure)是數據的組織方式。程序中用到的數據都不是孤立的,而是有相互聯繫的,根據訪問數據的需求不同,同樣的數據可以有多種不同的組織方式。以前學過的復合類型也可以看作數據的組織方式,把同一類型的數據組織成數組,或者把描述同一對象的各成員組織成結構體。數據的組織方式包含了存儲方式和訪問方式這兩層意思,二者是緊密聯繫的。例如,數組的各元素是一個挨一個存儲的,並且每個元素的大小相同,因此數組可以提供按下標訪問的方式,結構體的各成員也是一個挨一個存儲的,但是每個成員的大小不同,所以只能用.運算符加成員名來訪問,而不能按下標訪問。

本章主要介紹棧和隊列這兩種資料結構以及它們的應用。從本章的應用實例可以看出,一個問題中數據的存儲方式和訪問方式就決定瞭解決問題可以採用什麼樣的算法,要設計一個算法就要同時設計相應的資料結構來支持這種算法。所以Pascal語言的設計者Niklaus Wirth提出:算法+資料結構=程序(詳見[算法+資料結構=程序])。