棧是一種什么的數(shù)據(jù)結(jié)構(gòu) 鏈棧,存儲(chǔ)數(shù)據(jù)的類型定義問題要注意什么?
鏈棧,存儲(chǔ)數(shù)據(jù)的類型定義問題要注意什么?如果是C,可以用模板實(shí)現(xiàn)。此外,您可能不需要自己編寫。在STD圖書館里。如果是C,有幾種方法。Char比int短,所以可以申請(qǐng)聯(lián)合結(jié)構(gòu)來存儲(chǔ)它。另一種方法是存儲(chǔ)
鏈棧,存儲(chǔ)數(shù)據(jù)的類型定義問題要注意什么?
如果是C,可以用模板實(shí)現(xiàn)。此外,您可能不需要自己編寫。在STD圖書館里。
如果是C,有幾種方法。Char比int短,所以可以申請(qǐng)聯(lián)合結(jié)構(gòu)來存儲(chǔ)它。另一種方法是存儲(chǔ)一個(gè)通用void*并在使用它時(shí)更改其類型。
定義鏈棧和單鏈表這兩種數(shù)據(jù)結(jié)構(gòu)有什么區(qū)別?。课矣X得鏈棧就是給單鏈表改了個(gè)結(jié)構(gòu)體名稱而已。在具體函?
站和隊(duì)列是抽象結(jié)構(gòu),而單鏈表是一個(gè)具體的實(shí)現(xiàn)。通過鏈表可以實(shí)現(xiàn)堆棧和隊(duì)列的操作。
通常,堆?;蜿?duì)列用結(jié)構(gòu)封裝,然后定義一些操作(推送、彈出等)。這里,對(duì)鏈表進(jìn)行具體的操作。例如
結(jié)構(gòu)堆棧{
結(jié)構(gòu)列表{head*head
}
結(jié)構(gòu)隊(duì)列{
結(jié)構(gòu)列表{head*head
結(jié)構(gòu)列表{head*end
}