棧頂指針top圖文解釋 “->”表示什么,棧的棧底指針指向哪,棧頂指針指向哪?
“->”表示什么,棧的棧底指針指向哪,棧頂指針指向哪?棧的數(shù)據(jù)結構就像沒有水的桶的數(shù)據(jù)結構,有水的時候上指針指向桶的底部,有水的時候上指針指向水面,當然是水面上存儲的水上面提到的水是一種數(shù)據(jù)類型,例如
“->”表示什么,棧的棧底指針指向哪,棧頂指針指向哪?
棧的數(shù)據(jù)結構就像沒有水的桶的數(shù)據(jù)結構,有水的時候上指針指向桶的底部,有水的時候上指針指向水面,當然是水面上存儲的水
上面提到的水是一種數(shù)據(jù)類型,例如int
向一個棧頂指針為HS的鏈式棧中插入一個s所指的結點時,則執(zhí)行?
答案是C。問題應該是疊加。插入s后,它將成為堆棧的頂部,下一個s是原始的HS,堆棧的頂部指針將再次復制到s。此初始化用于線性堆棧,即使用數(shù)組形成堆棧,堆棧頂部指針值是當前堆棧頂部元素的下標值。
當堆棧中有數(shù)據(jù)時,將首先添加頂部指針。
Initialize to empty stack,
指定空堆棧指向-1,這樣當?shù)谝粋€元素進入堆棧時,頂部指針可以通過自加指向元素0,從而避免其他判斷。
關于棧頂和棧底指針的問題?
其實鏈棧也是鏈表的一種形式。head指針始終指向列表的第一個節(jié)點(或head節(jié)點),而top指針始終指向堆棧的頂部。創(chuàng)建鏈表通常有兩種方法:一種是頭插入法,另一種是尾插入法。鏈堆棧也是如此。假設創(chuàng)建的堆棧沒有頭節(jié)點,即第一個節(jié)點開始存儲數(shù)據(jù)。在使用head-insertion方法構建堆棧時,head指針是top指針,兩者之間沒有區(qū)別。使用尾部插入方法構建堆棧時,頭部指針不是頂部指針。此時,在構建堆棧時,我們需要定義一個尾部指針,使其始終指向堆棧的最后一個元素(即最后一個堆棧),因此尾部指針是堆棧指針的頂部。
鏈棧中的棧頂指針是不是頭指針,兩者有沒有區(qū)別?謝謝?
如果沒有頭節(jié)點,堆棧頂部指針將指向第一個節(jié)點,即堆棧頂部節(jié)點。如果有一個header節(jié)點,堆棧頂部的指針指向空的header節(jié)點,但是一般的鏈堆棧實現(xiàn)不使用head節(jié)點