如何判斷某種結構是邏輯結構還是存儲結構或數據結構?


當一個結構,如數組、鏈表、樹、圖,在邏輯結構中只有一種定義,而在物理結構中卻有兩種選擇,那么這個結構就屬於邏輯結構;

相反,當此結構在原有基礎上加上了某種限定,使得其在物理結構中只有一種定義,那么這個結構就屬於物理(存儲)結構;

 

 

  舉例1:棧屬於什么結構?

  分析:棧在邏輯結構中只能屬於線性結構,而在物理結構中它可以使用順序存儲(數組),也可以使用鏈式存儲(鏈表),所以說棧是一種邏輯結構。

  舉例2:線索二叉樹屬於什么結構?

  分析:首先,可以得到二叉樹是一種數據結構,但是線索二叉樹是加上線索后的鏈表結構(不能用順序存儲),也就是說,它是計算機內部的只有一種存儲結構,所以是物理結構。

 

邏輯結構和存儲結構的區別點在於:數據的邏輯結構是獨立於在計算機中的存儲結構的,數據的存儲方式有多種不同的選擇。例如棧是一種邏輯結構,它可以用順序存儲也可以用鏈式存儲。

而數據結構是既可以描述邏輯結構又可以描述存儲結構和數據運算,必須包含以上三種元素。所以像順序表、哈希表、單鏈表都是數據結構。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM