資料結構這門學科的目的,是探索資料可以如何被儲存與被計算,以及分析不同儲存或計算方式下的效率。資料結構跟演算法的內容有高度的重疊,但前者偏重於如何實作,後者則偏重於較為進階與多元的計算方式。
抽象資料型別(Abstract Data Type, ADT)是資料結構中重要的基礎概念;它的目的是把一個資料結構的「可以做哪些存取動作」和「怎麼做到那些存取動作的」這兩件事情分開,讓使用者能夠在不需要知道資料結構本身是如何實作的狀況下,就能運用該資料結構去解決問題;就像各位網購的時候,不需要關心商家怎樣做倉儲和物流,也可以開心地花錢一樣。當然,在資料結構這門學科中,我們還是會探討不同的實作方式,是否會有效率等方面的差異。