支援子程式呼叫的資料結構是什麼棧?樹?佇列?二叉樹

2022-08-14 15:40:22 字數 3133 閱讀 2203

1樓:匿名使用者

額 理論上來說所有資料結構都支援子程式的呼叫。。。這個題的意思應該是子程式呼叫的時候能看成什麼樣的資料結構。

嚴格來說是棧——因為遞迴呼叫子程式的時候就是先入後出的而且是線性的。雖然子程式也可以這樣呼叫

f[i]=f[i-1]+f[i-1]

看起來像是樹,但是實際上還是深度優先遍歷一棵樹,本質上是個棧。

所以說這個題的題意不清。如果說「能夠使用子程式呼叫的資料結構」就是全選,如果是「子程式呼叫的時候能看成什麼樣的資料結構「就是棧。

2樓:克萊爾

答案是棧。這個題目的意思是哪一種資料結構可以儲存呼叫的介面,顯然只有棧才可以儲存。

3樓:孫長凱

如遞迴呼叫子程式時就是先入後出的,而且是線性的f[i]=f[i-1]+f[i-2]放於棧底f[i-1]=f[i-2]+f[i-3]放於倒數第二層f[i-2]=f[i-3]+f[i-4]放於倒數第三層想要計算出棧底(先進)得先逐個彈出棧頂元素依次進行計算,最後才彈出棧底元素計算得出結果(後出)

純屬非計算機人員見解

支援子程式呼叫的資料結構是 a)棧 b)樹 c)佇列 d)二叉樹

4樓:逆

參考書答案給的是a,我也在看這道題!(**額 理論上來說所有資料結構都支援子程式的呼叫。。。這個題的意思應該是子程式呼叫的時候能看成什麼樣的資料結構。

嚴格來說是棧——因為遞迴呼叫子程式的時候就是先入後出的而且是線性的。雖然子程式也可以這樣呼叫

f[i]=f[i-1]+f[i-1]

看起來像是樹,但是實際上還是深度優先遍歷一棵樹,本質上是個棧。

所以說這個題的題意不清。如果說「能夠使用子程式呼叫的資料結構」就是全選,如果是「子程式呼叫的時候能看成什麼樣的資料結構「就是棧。)

5樓:匿名使用者

b)樹因為子程式呼叫強調的是層次關係,且子程式呼叫功能模組可以有多個,而棧和佇列側重的是先後關係;二叉樹只能有兩個後件,所以。。。可能你會被a項困擾。**:

棧只是為子程式呼叫提供儲存空間,而層次呼叫是樹型結構的特點,樹型結構為實現它的特點應用了棧技術,所以實現呼叫的還是數型結構。)

6樓:一丁路

1.踐樹。

2.佇列。

3.二叉樹。

棧——因為遞迴呼叫子程式的時候就是先入後出的而且是線性的。

優秀的程式設計師應該有自己良好的風格和習慣

函式代表的是一個獨立的功能,可以被重複使用,她有她獨立的巨大意義,也能讓人看得清晰明瞭。應該養成這種習慣,哪怕**只有兩三行。

在學習中,我們容易養成程式就寫一個函式的習慣,這種**只有自己容易看懂,對於別人就沒有了存在的意義,只應在驗證性的小程式中使用,以節省時間。而大工作量的或者比較正式的程式都應該獨立成函式甚至使用多個檔案,這會讓你終身受益!

最後**的好壞不是用長短來衡量的,商用的**代表著安全和穩定,其主要**往往只有很少,大部分的**都是為防止意外而設,有些**甚至讓人覺得多餘。

7樓:愛程式設計小子

答案:b

子程式呼叫是一種層次關係,子程式呼叫功能模組,呼叫功能模組的個數也不確定,可以是一個,也可以是多個。選項a、c中元素之間是一種前後件關係,前後元素之間沒有層次之分,每個結點有一個前件也只有一個後件。二叉樹是一種很有用的非線性結構,二叉樹不同於樹形結構。

二叉樹具有以下兩個特點:①非空二叉樹只有一個根結點;②每一個結點最多有兩棵子樹,且分別稱為該結點的左子樹與右子樹。選項d規定每個結點只能有兩個後件。

在子程式呼叫中,呼叫的功能模組可以是多個,可以呼叫超過兩個功能模組。所以選項a、c、d均不正確。

故本題答案為b。

8樓:

a 不大清楚題目的意思,函式呼叫的時候要入棧,返回要出棧,所以需要用到棧結構

9樓:春風化雨

b吧 ,但我解釋不清楚!

被整暈了的題「支援子程式呼叫的資料結構是」a:棧。b:樹。c:二叉樹。d:佇列

10樓:匿名使用者

答案是a: 棧。系統進行子程式的呼叫需要用到棧,即呼叫之前先要保護現場,而這現場如何保護,就是將其儲存在棧裡。當呼叫完畢返回主調函式時要恢復現場,而恢復現場即做出棧操作。

支援子程式呼叫的資料結構是?怎麼答案不唯一,有說是棧的,還有樹,二叉樹,到底是什麼

11樓:

1全部應該是棧吧,子程式呼叫執行完了,要返回來的程式,這樣就必須把子程式相關資訊儲存下來,如果程式有巢狀的話,正好滿足先進後出的特性,所以這種結構就是棧

支援子程式呼叫的資料結構是哪個?

12樓:匿名使用者

支援呼叫是二叉樹

二叉樹除了是左孩子,就是右孩子,每一次呼叫的話,都做同樣的操作。

因為你的這個"踐"這個字是打錯了,也不知道是不是這個,我想應該是棧(zhan),棧的特點就先進後出,只允許在一端操作。而佇列的特點就是先進先出,它只允許在的表的一端進行插入,通常稱入隊,在另一端進行刪除,稱出隊。

13樓:艾艾艾利特

棧,棧支援子程式呼叫。棧是一種只能在一端進行插入或刪除的線性表,在主程式呼叫子函式時要儲存主程式的當前狀態,符合棧的特性

仍有不懂可繼續提問

14樓:

支援子程式呼叫的是棧。棧是一種只能在一段進行插入或者刪除的線性表,在主程式呼叫子函式時要首先儲存主程式當前的狀態,然後轉去執行子程式,最終把子程式的執行結果返回到主程式中呼叫子程式的位置,繼續向下執行,這種符合棧的特點。

15樓:匿名使用者

上面的資料結構和子程式呼叫是兩個完全不同的東西吧.

16樓:匿名使用者

不論是什麼樣的結構,都可以呼叫子程式。

這主要是在程式**中新增呼叫語句。

資料結構主要是在對資料的儲存方式上做一定的研究的結果。

所以嘛,問題有問題。

程式分為主程式,和子程式(指的是區域性功能模組),主程式調入資料,在新增不同的子程式,完成對資料的處理,這就是為什麼功能龐大的程式如此可以精確地執行的原因。

程式的架構方式還是有的研究的。

資料結構學是什麼,資料結構主要學什麼內容

佇列 陣列 圖等結構的表示方式 資料結構主要學什麼內容 一 線性表 一 線性表的定義和基本操作 二 線性表的實現 1.順序儲存結構 2.鏈式儲存結構 3.線性表的應用 二 棧 佇列和陣列 一 棧和佇列的基本概念 二 棧和佇列的順序儲存結構 三 棧和佇列的鏈式儲存結構 四 棧和佇列的應用 五 特殊矩陣...

學習C的windows程式編寫和資料結構,離散數學和線性代數以及高等數學是不是必學的

高等數學與c程式設計沒有本質的聯絡,高等數學主要是培養你的推理思維能力。離散數學和線性代數可以視為程式設計的基礎課程,因為在這兩門課中將會學到一些程式設計所要用到得結構 演算法等,比如說離散數學中的樹和圖,線性代數中的線性結構 行列式和矩陣等,故這兩門課程學好了對後面得程式設計課程的學習是有好處的!...

在資料結構c語言版中,和的用法是什麼?謝謝

是宣告指標是所用。是取地址符,如 a,此時取到a的地址 是邏輯與,例如 a b,若ab同時為1,a b 1,有一個是0,a b 0 望採納!在c語言指標中 表示變數為指標和取值的 表示取地址 是指標的意思,當然也可以解開指標。那個 可是引用或者取地址用。用再指標定義中 是取地址,用法例如scanf ...