A、試題:1,2,3,4是入棧順序,請問一共有多少種可能的出棧順序
B、解析:此題考查的是棧的後進先出的特性,也是棧這一部分内容常出的考題形式(已知入棧順序,問出棧順序的題型)。最簡單的方式就是分為4種情況,1打頭,2打頭,3打頭,4打頭,在固定了第一個出棧的元素後,實際上就是考慮其他三個元素的組合情況,具體寫出來後,發現共有14種情況。
C、難度分析:此題的難度屬于中等偏下,本身就隻有4個數,考查的也是最基礎的棧的特性,非常直接清楚,做題也不需要拐彎抹角。
A、試題:編寫程序判斷一棵二叉樹是否是一棵完全二叉樹?
B、解析:此題首先需要了解的是完全二叉樹的定義,即與深度相同的滿二叉樹對應位置的編号相同。所以可以從定義出發,編号是按照從上到下,從左到右的層次編号,所以可以使用層序遍曆,利用隊列,若左右孩子不空直接入隊,否則對于空指針給一個特殊的标記,如“#”,也入隊,輸出出隊順序,若中間出現“#”則判斷不是完全二叉樹,否則判斷是一棵完全二叉樹。
C、難度分析:此題難度屬于中等偏上,因為很多同學可能本身能夠認識一棵完全二叉樹,但是對于最原始的定義并不是很清晰,所以可能會把問題想得複雜,不一定能往層序遍曆靠,難點在于切入角度這裡,一旦想到使用隊列實現層序遍曆,代碼層面其實非常容易。
A、試題:已知一個無向帶權圖,請你利用克魯斯卡爾(或者普利姆)算法,畫出該圖的最小生成樹,并且寫出選邊的順序。
B、解析:此題就是單純直接考察的最小生成樹的算法,以克魯斯卡爾為例,用三個字總結就是“隻看邊”,每次在未選擇的所有邊中選擇權值最小的,在選擇的過程中注意出現多條權值相同的邊的情況,在不構成環的前提下,都可以選擇,即最小生成樹不一定唯一,直到選出n-1條邊,把所有的結點都連接起來。
C、難度分析:此題難度屬于簡單,題目問的簡潔明了,很直白的考察最小生成樹算法,隻要掌握了兩個算法的過程和注意事項,對付此類題是輕輕松松。
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!