思路
/*
回文數判斷的思想
1.需要用到兩個棧 乙個棧用於壓棧 乙個用於退棧的接收 這裡用到的是靜態棧
2.退棧的次數是len / 2 次
3.回文數分為奇數個和偶數個兩種情況
*/
**實現#include
#include
#define maxsize 100
//為了簡化** 假設空間足夠大 不存在靜態棧滿的情況
#define flag '@'
//停止輸入的標誌
typedef
char datatype;
typedef
struct
sqstack;
void
init_stack
(sqstack *s)
;void
enter_stack
(sqstack *s)
;void
show_stack
(sqstack *s)
;int
judge_palindromic
(sqstack *p,sqstack *q)
;void
delete_stack
(sqstack *s,datatype *c)
;void
main()
void
init_stack
(sqstack *s)
void
enter_stack
(sqstack *s)
}void
delete_stack
(sqstack *s,datatype *c)
//c記錄傳出的元素
void
show_stack
(sqstack *s)
printf
("\n");
}int
judge_palindromic
(sqstack *p,sqstack *q)
printf
("退棧後p中元素:\n");
show_stack
(p);
printf
("退棧後q中元素:\n");
show_stack
(q);
if(p->top != q->top)
while
(i >0)
else
i--;}
return j;
}
資料結構練習題
設pa,pb分別指向兩個帶頭結點的有序 從小到大 單鏈表。仔細閱讀如下的程式,並回答問題 1 程式的功能 2 s1,s2中值的含義 3 pa,pb中值的含義。include include typedef struct list list void exam list pa,list pb else...
資料結構 緒論 練習題
a.找出資料結構的合理性 b.研究演算法的輸入 輸出關係 c.分析演算法的效率以求改進 d.分析演算法的易讀性 答案 c 什麼是資訊?廣義地講,資訊就是訊息。宇宙三要素 物質 能量 資訊 之一。它是現實世界各種事物在人們頭腦中的反映。此外,人們通過科學儀器能夠認識到的也是資訊。資訊的特徵為 可識別 ...
回文數 (棧)資料結構
回文數 棧 由於輸入的乙個回文數可能無窮大,所以要求使用單鏈表儲存該數。問題分析 將使用者輸入的數以乙個單鏈表的方式儲存。從頭掃瞄該單鏈表,將前面的一半元素入棧,若元素的總個數為奇數,則跳過中間的那個元素,然後開始迴圈 邊退棧邊在單鏈表中後移指標,若當前棧頂元素與單鏈表中當前節點的值域不相等,則退出...