算法与数据结构(part3)--数据结构概述
學習筆記,僅供參考,有錯必糾
文章目錄
- 算法與數據結構--基于python
- 數據結構
- 什么是數據結構
- 數據結構的概念
- 抽象數據類型(ADT)
算法與數據結構–基于python
數據結構
什么是數據結構
我們為了解決問題,需要將數據保存下來,然后根據數據的存儲方式來設計算法,數據的存儲方式不同,會導致我們需要用不同的算法進行處理數據。我們希望算法解決問題的效率越快越好,于是我們就需要考慮數據究竟如何保存的問題,這就是數據結構。
如果說算法是一種解決問題的思路,那么數據結構就是思路的載體。
數據結構的概念
數據是一個抽象的概念,將其進行分類后得到程序設計語言中的基本類型。如:int,float,char等。數據元素之間不是獨立的,它們存在特定的關系,這些關系便是結構。數據結構指數據對象中數據元素之間的關系。
Python給我們提供了很多現成的數據結構類型,這些系統自己定義好的,不需要我們自己去定義的數據結構叫做Python的內置數據結構,比如列表、元組、字典而有些數據組織方式,Python系統里面沒有直接定義,需要我們自己去定義實現這些數據的組織方式,這些數據組織方式稱之為Python的擴展數據結構,比如棧,隊列等。
抽象數據類型(ADT)
抽象數據類型的含義是指一個數學模型以及定義在此數學模型上的一組操作。即把數據類型和數據類型上的運算捆在一起,進行封裝。抽象數據類型也是一種數據類型,只不過是一種經過封裝的數據類型,就像python中的列表,就是一種抽象數據類型。
最常用的五種數據運算:插入、刪除、修改、查找、排序.
- 舉個例子
比如說,我們定義一個工具類MyTools:
class MyTools:def add():passdef delete():passdef sort():pass這時,我們就可以把這個自定義類看做一個抽象數據類型。
如果有一天,某人要我們定義一個ADT,其實就是要我們寫一個自定義類。
總結
以上是生活随笔為你收集整理的算法与数据结构(part3)--数据结构概述的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 算法与数据结构(part2)--Pyth
- 下一篇: 算法与数据结构(part4)--顺序表