數據結構與算法之緒論

什麼是數據結構算法

簡單來講能夠解釋爲:程序設計=數據結構+算法;編程

主要是用來研究數據結構的關係,數據元素之間存在的一種或多種特定關係的集合;數據結構

 

數據結構的分類編程語言

按照傳統意義上來說,數據結構能夠分爲兩類:邏輯結構和物理結構;spa

邏輯結構指的是數據對象中數據元素之間的相互關係。設計

主要有四種邏輯結構:指針

  1. 集合結構:集合結構中的數據元素同屬於一個集合體中,可是它們之間沒有其餘關聯;
  2. 線性結構:線性結構中的數據元素之間是一對一的關係,如同夫妻關係;
  3. 樹形結構:樹形結構中的數據元素之間是一對多的關係,如同一個爸爸對多個本身的孩子;
  4. 圖形結構:圖形結構中的數據元素之間是多對多的關係,我更傾向於把它理解成一個網狀結構,如同在社會中人與人之間都是相互關聯的;

 

物理結構的存儲對象

物理結構中的存儲器主要是針對內存而言的,硬盤、軟盤、光盤等外部存儲器的數據組織一般用文件結構來描述;內存

數據元素的存儲形式有兩種:順序存儲和鏈式存儲。程序設計

  1. 順序存儲結構是把數據元素存放在地址連續的存儲單元裏,其數據間的邏輯關係和物理關係是一致的(編程語言的數據結構就是屬於這種);
  2. 鏈式存儲結構是把數據元素存放在任意的存儲單元裏,這組存儲單元能夠是連續的,也能夠是不連續的;它比順序存儲更靈活(相似銀行排號辦理業務),可是不能反應其邏輯關係,因此須要用一個指針存放數據元素的地址(指針指向的是下一個地址)—經過地址就能夠找到相關聯數據元素的位置
相關文章
相關標籤/搜索