empty
Coddyの「スタック - データ構造シリーズ #1」コースのレッスン 8/13。
チャレンジ
簡単Stack に、引数を取らず、スタックが空の場合は true を、そうでない場合は false を返す empty という名前のメソッドを追加してください。
自分で試してみよう
#include <iostream>
#include <sstream>
#include <string>
#include "stack.h"
int main() {
Stack stack;
std::string line;
while (std::getline(std::cin, line)) {
std::istringstream iss(line);
std::string cmd;
if (!(iss >> cmd)) continue;
if (cmd == "push") {
int x; iss >> x; stack.push(x);
}
else if (cmd == "top") {
std::cout << stack.top() << std::endl;
}
else if (cmd == "pop") {
std::cout << stack.pop() << std::endl;
}
else if (cmd == "size") {
std::cout << stack.size() << std::endl;
}
else if (cmd == "empty") {
std::cout << (stack.empty() ? "true" : "false") << std::endl;
}
}
return 0;
}