shell指令碼實現堆疊(模擬合服)

2021-08-01 16:46:24 字數 769 閱讀 3376

shell用陣列模擬乙個棧,每次彈出來棧頂的最上面兩個元素,進行合服。

#!/bin/bash

# test array and stack

maxtop=5 #堆疊所能存放元素的最大值

declare top=0 #定義棧頂指標,初始值為0

temp= #定義乙個臨時全域性變數,存放出棧元素,初始值為空

declare -a stack #定義乙個全域性陣列

#進棧操作,可以同時將多個元素壓入棧頂

function push()

#pop函式用於出棧操作

function pop()

unset stack[$top]

let top=top-1

return

}#顯示當前堆疊內的資訊,以及top指標

function show_stack()

doecho "@@ "$i

done

echo "@@ stack size = $top"

echo "@@ -----------------------------"

echo

}function merge2db()

function merge()

function main()

main $* # $* 傳遞給指令碼的所有引數

2018 08 28 集合堆疊機(模擬 STL)

描述 中學數學裡集合的元素往往是具體的數字,比如a b 空集 等等。但是要特別注意,集合的元素也可以是另乙個集合,比如說c 即說明c有且僅有乙個元素 空集b,所以稱b是c的子集或者稱b是c的元素都是正確的。所謂乙個集合的勢,就是這個集合的元素個數,一般記為 s 空集的勢為0。在上例中,a 3,b 0...

使用shell程式設計實現LinuxFTP伺服器的配置

bin bash installftp versionftp passwdftp mkdirftp chmodftp find in file matching num add line at end del line add line echo do you want to install vsf...

linux用shell指令碼模擬時鐘 指令碼錄製

bin bash this is a clock,it will display time once a second,in the same position file name clock.sh tput sc while true do echo n date sleep 1 tput rc ...