1.4個元素按a,b,c,d順序連續進s棧,進行pop(s,x)運算後,x的值是( c d ).
a.ab.b
c.cd.d
1.進棧(push)演算法
①若top≥n時,則給出溢位資訊,作出錯處理(進棧前首先檢查棧是否已滿,滿則溢位;不滿則作②);
②置top=top+1(棧指標加1,指向進棧位址);
③s(top)=x,結束(x為新進棧的元素);
2.退棧(pop)演算法
①若top≤0,則給出下溢資訊,作出錯處理(退棧前先檢查是否已為空棧, 空則下溢;不空則作②);
②x=s(top),(彈出/刪除棧頂元素,把這個元素的值賦值給x):
③top=top-1,結束(棧指標減1,指向棧頂)。
pop(s,x):彈出/刪除棧頂元素,把這個元素的值賦值給x
2.初始化乙個空間大小為5的順序棧ss後,ss->top的值( a ).
a.是0
b.不定
c.不再改變
d.動態變化
順序棧top=0,表示空棧
3.容量是10的迴圈隊的頭尾指標的位置s.rear為2,則隊的尾元素的位置是( c ).
a.3b.2
c.1d.0
尾指標始終指向佇列尾元素的下乙個元素。因此尾元素位置為1
4.同乙個棧內各元素的型別( a ).
a.必須一致
b.可以不一致
c.不能一致
d.不必不一致
同乙個隊也要求元素型別一致。因為在定義棧/佇列的時候已經規定了儲存資料的型別
演算法筆記ch3
題目描述 有兩個日期,求兩個日期之間的天數,如果兩個日期是連續的,則規定它們之間的天數為兩天。解題思路 這種求日期之間相差天數的題目有乙個很直接的思路,即令日期不斷加1天,直到第乙個日期等於第二個日期為止,即可統計出答案。如果想要加快速度,只需要先把第乙個日期的年份不斷加1,直到與第二個日期的年份相...
C語言知識串講(CH3)
掌握 1.資料輸出 putchar 函式,printf函式 2.資料輸入 getchaar函式,scanf函式。1 結構化程式設計所規定的三種基本控制結構是 順序 選擇 迴圈 2 有如下語句 scanf a d,b d,c d a,b,c 為使變數a 2,b 3,c 4,從鍵盤輸入資料的正確形式應是...
ch3 數學 尤拉函式
1.自然語言描述 自然數n的尤拉函式指1 n之間所有與n互質的數的個數 比如,6的尤拉函式值為2。尤拉函式表示式 phi n n 1 1 p1 1 1 p2 1 1 p3 1 1 pk p為質因子的底數。用容斥原理證明 展開這個表示式,phi n n n p1 n p2 n pk n p1p2 n ...