上浮最多走几步(C++)
插入一个元素,上浮最多走【0】步。
插完五个数之后堆顶是几
把 17、24、15、13、23 依次插进一个空的大顶堆。运行下面这段程序: #include <algorithm> #include <iostream> #include <string> #inc
自己写插入
补全 push_up:先放到末尾,再一路上浮。把五个数插完之后输出堆顶(堆空着的话输出 空)。 (本题用 g++ -std=c++17 -O0 编译。)
插完之后整个数组长什么样
同一个 push_up。五个数插完之后,把整个数组拼起来输出(用 / 隔开)。注意末尾两个的大小关系——兄弟之间本来就没有要求。 (本题用 g++ -std=c++17 -O0 编译。)
插入 23 时上浮了几次
补全 push_count(大顶堆:比父亲大就往上换),让它返回这次上浮换了几次。前四个数插完之后再插 23,输出这一次换了几次。 (本题用 g++ -std=c++17 -O0 编译。)
取走堆顶之后拿什么补上
第 1 步:要拿走堆顶 24 第 2 步:末尾的 17 补到顶上 第 3 步:两个孩子里 23 大 第 4 步:17 和 23 换 第 5 步:17 比孩子 13 大:停 第 6 步:新堆顶是 23 24 23 15 13 17 24 23
下沉时和哪个孩子换(C++)
下沉的时候,要和【0】交换。
和较小的那个换会怎样(C++)
下沉时如果和较小的孩子交换,后果是【0】。
弹一次之后新的堆顶是几
堆是 24、23、15、13、17。运行下面这段程序: #include <algorithm> #include <iostream> #include <string> #include <ut
弹一次之后还剩几个
同一个堆。运行下面这段程序: #include <algorithm> #include <iostream> #include <string> #include <utility> #in