スタック・キューメニュー【スタック実装編 1〜2】
スタック…要素を一列に並べて 後に入れた要素から順に取り出すデータ構造
【スタック実装編 step 1】コード
reader.on('close', () => {
const Q = Number(lines[0]);
const A = [];
for (let i = 1; i <= Q; i++) {
const query = lines[i].split(' ');
switch (query[0]) { // query[0]の値で処理を振り分け
case '1': // PUSH
A.push(query[1]); // 末尾に追加
break;
case '2': // POP
A.pop(); // 末尾の要素を削除
break;
}
console.log(A.join(' '));
}
});
query[0]
が 1 なら push()
を実行して末尾に要素追加。2 なら pop()
を実行して末尾の要素を削除。
【スタック実装編 step 2】コード
reader.on('close', () => {
const Q = Number(lines[0]);
const A = [];
for (let i = 1; i <= Q; i++) {
const query = lines[i].split(' ');
switch (query[0]) { // query[0]の値で処理を振り分け
case '1': // PUSH
A.push(query[1]); // 末尾に追加
break;
case '2': // POP
console.log(A.pop()); // 末尾から取り出した要素を出力
break;
}
console.log(A.join(' '));
}
});
console.log(A.pop())
で末尾の要素の取り出しと出力を同時に行いました。
コメント