std::deque 从左边加用哪个
std::deque 里,从左端加一个元素用的是【0】。
两端各加一个之后左边是谁
运行下面这段程序: #include <iostream> #include <string> #include <vector> using namespace std; #include <d
两端都能进
补全 push_back 和 push_front。先 push_back 小满,再 push_back 阿泰,再 push_front 阿岚,输出最左边那个。 (本题用 g++ -std=c++17 -O0 编译。)
两端都能出
补全 pop_front 和 pop_back。三个人排好之后,先从左端取一个、再从右端取一个,输出右端取到的那个。 (本题用 g++ -std=c++17 -O0 编译。)
把它当成一个栈来用
用同一个 Deque 当栈:进出都只走右端。依次放进三个人,取一次,输出取到的是谁。 (本题用 g++ -std=c++17 -O0 编译。)
两头夹着判回文
双端队列最顺手的一个用法:判断一个字符串正着读反着读一不一样。补全 is_pal:用 std::deque每次从两端各取一个比一比,不一样就返回 false。这次判的是 abcba。 (本题用 g++ -std=c++17 -O0 编译。)
std::queue 的 pop 做什么
第 1 步:std::queue 底下是 deque 第 2 步:push(3):接到 back 后面 第 3 步:push(7):接到 back 后面 第 4 步:push(5):接到 back 后面 第 5 步:只看得见 front 和
std::queue 默认的底层容器
不指定的话,std::queue 底下用来存元素的容器是【0】。
deque 比 vector 多的本事
和 vector 比,std::deque 多出来的本事是【0】。
std::queue 出队后的队头
运行下面这段程序: #include <iostream> #include <string> #include <vector> using namespace std; #include <de