JavaScript でスタックを実装しています。
検討:
Stack{0,1,2,3} Top:0
ここで、ユーザーは値 2 をポップします。
Stack{0,1,3} Top:0
これはスタックの許容可能な動作ですか? 私は自分のスタックをローリングしていますが、これを行う組み込みのコードはありますか?
私のコード:
function Stack() //Creating Stack Object
{
// Create an empty array of cards.
this.cards = new Array(); //Cards array inside stack object
this.push = pushdata; //Call pushdata function on push operation
this.pop = popdata; //Call popdata function on pop operation
this.printStack = showStackData; //Call showStackData function on printstack operation
}
function pushdata(data)
{
this.cards.push(data);
}
function popdata(data)
{
return this.cards.pop();
}
function showStackData()
{
return this.cards;
}
var a = new Stack(); //Create stack Object
a.push(12); //Push Data onto Stack
a.push(32);
a.push(42);
var z = a.pop();
document.write("Data Popped: " + z);
document.write("Stack Output: " + a.printStack());
スタックがこのアプリケーションの正しいタイプのデータ構造でない場合、正しいタイプはどれですか?