(1)為什么在寫資料結構的代碼正式開始前要定義資料結構的存盤結構?
例如typedef struct
{ Selemtype *base;
Selemtype *top;
int stacksize;
}SqStack;
這個怎么理解?(困擾了我好久)都是定義類似sqlist,BiTree,這樣的資料結構,為什么不定義抽象資料型別的呢?這時候感覺定義的BiTree啊什么的又當作資料型別來用了,(2)資料結構和抽象資料結構是什么關系,兩者互相包含嗎?嚴蔚敏的資料結構第三章開頭又講堆疊和佇列是資料結構,然后又說是重要的抽象資料型別,更懵了。。(3)創建堆疊時,這個函式如何回傳堆疊的地址呢,是在定義存盤結構時加上定義一個指標,然后函式型別設定為這個指標嗎?(比較疑惑的是這個指標的定義書上只在鏈表存盤結構定義時有,這又是為什么呢?)
(4)匯 總:感覺開頭定義的存盤結構比如SqStack都當作資料型別來使用了,我的理解矛盾了。我想的是這一堆資料擱在一起是資料結構(有關系),然后每個資料元素都是抽象資料型別的,他們是struct型別,由多個基本型別組成,所以覺得typedef struct應該定義抽象資料型別,以便后面使用,不知道哪里理解錯了。現在腦子很混亂,請大佬詳細說明一下,感覺這個問題搞不清楚代碼都不會寫,非常感謝!!! (初學資料結構,請多指教)
問題有點多,又不太有邏輯,也不知道描述的如何,請見諒!!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/230826.html
標籤:C語言
