部落格作業03 棧和佇列

2022-05-29 14:36:14 字數 1946 閱讀 3045

定義字元陣列str[100];

用函式gets()讀入資料;

for i=0 to str[i]!='\0'

將資料入棧

使len=strlen(str)

利用palindrome(str,len)判斷是否對稱;

return 1 列印yes

否則 列印no

對於對稱判斷,沒考慮n為奇數時的情況

判斷m,n的大小

if(m>n)

列印error

for i=0 to i=n

入隊利用尾指標給每個人編號

while(!queueempty(q))

if 佇列不為空

頭指標開始遞增

尾指標迴圈

利用c編譯,所以編譯錯誤

定義整型變數 e,n,i

輸入n;

定義佇列a,b;

for i

do 輸入e

if e為奇數

進a佇列

else e為偶數

進b佇列

endif a佇列不為空

輸出a佇列頭

刪除a佇列頭

else

輸出b佇列頭

刪除b佇列頭

在輸出e的時候,在b佇列那裡輸出完後沒有刪除

2 *****= -->移動方向

這是列車廂排程問題,對於列車廂的排程,對照上方的ascii字元圖,問題描述如下:

有三條平行的列車軌道(1、2、3)以及1-3和2-3兩段連線軌道。現有一列車廂停在1號軌道上,請利用兩條連線軌道以及3號軌道,將車廂按照要求的順序轉移到2號軌道。規則是:

每次轉移1節車廂;

處在1號軌道的車廂要麼經過1-3連線道進入3號軌道(該操作記為"1->3"),要麼經過兩條連線軌道直接進入2號軌道(該操作記為"1->2");

一旦車廂進入2號軌道,就不可以再移出該軌道;

處在3號軌道的車廂,只能經過2-3連線道進入2號軌道(該操作記為"3->2");

顯然,任何車廂不能穿過、跨越或繞過其它車廂進行移動。

對於給定的1號停車順序,如果經過排程能夠實現2號軌道要求的順序,則給出操作序列;如果不能,就反問使用者 are(你) you(是) kidding(凱丁) me(麼)??

部落格作業03 棧和佇列

定義乙個棧s用來存放str字串的值 str的值依次如s棧中 str的值與s值依次比較 如果有乙個不等,return 0 反之都相等 return 1 建立佇列q1 將1至n的數字依次入佇列 如果m大於n return error 否則while i 沒有考慮到結尾不能有多餘空格 將認識排號為奇數存入...

部落格作業03 棧和佇列

1.1緒論 程式 資料結構 演算法 資料組織方式 1資料的邏輯結構和資料的儲存結構,邏輯結構 集合,線性結構,樹形結構,圖形結構,儲存方式 順序儲存方式,鏈式儲存方式,索引儲存方式,雜湊儲存方式 空間複雜度,時間複雜度 邏輯結構 線性結構 鏈式儲存方式 順序儲存方式。順序儲存方式 操作 creatl...

部落格作業03 棧和佇列

邏輯結構包括 集合,線性結構,樹形結構,圖形結構 線性結構包括 線性表,鍊錶,棧,佇列,串 樹形結構包括 二叉樹等 棧是一種後進先出表,有順序儲存結構和鏈式儲存結構,基本操作包括 初始化 銷毀 進棧 出棧 判斷棧空 去棧頂。主要應用有 字首表示式轉字尾表示式以及字尾表示式的計算 迷宮問題 佇列是一種...