分层遍历为什么非要队列

第 1 步:根 A 先进队 第 2 步:取出 A,把 B、C 排到队尾 第 3 步:取出 B,把 D、E 排到队尾 第 4 步:取出 C,把 F 排到队尾 第 5 步:B、C 同一层,挨着出来 A front B C D E F 要一层一层

开始练习 →

把队列换成栈会怎样

同样的遍历代码,把队列换成栈,就变成了【0】。

开始练习 →

层序遍历最后访问谁

运行下面这段程序: #include <iostream> #include <string> #include <vector> using namespace std; #include <m

开始练习 →

层序遍历第四个访问谁

补全层序遍历:从总部出发,用队列一层一层地走,访问顺序记进 order。输出第 4 个被访问到的节点。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

数一数一共几层

补全 depth:用队列一层一层走,返回一共有几层。提示:每轮先记下当前队里有几个,正好就是这一层的节点数,一次性全取完再算下一层。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

从半路出发能走到几个

补全 reach:从给定节点出发,用队列走遍所有能到的地方,返回一共走到几个(含出发点)。这次从华北出发。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

广州在第几层

补全 level_of:用队列走的时候顺便记下每个节点的层号(总部算第 1 层),返回目标节点的层号。这次问的是广州。 (本题用 g++ -std=c++17 -O0 编译。)

开始练习 →

一个够用的循环队列要有啥

手写一个够用的循环队列,至少要有【0】。

开始练习 →

循环队列比 erase 强在哪

第 1 步:head=0,count=3 第 2 步:写在 (0+3)%4 = 3:count=4 第 3 步:count 等于容量:满了 第 4 步:叫走一个:head=1,count=3 第 5 步:写在 (1+3)%4 = 0:绕回去

开始练习 →

排进四个之后计数是多少

运行下面这段程序: #include <iostream> #include <string> #include <vector> using namespace std; struct CQueue

开始练习 →