塔子哥拿到了一个二叉树,每个节点的权值都不相同。塔子哥每次操作可以交换任意两个节点的权值,他希望用尽可能少的操作,使得二叉树的先序遍历序列为一个升序的数组,你能帮帮他吗?
由于二叉树的每个结点值都不同,所以可以用一个 dict 记录每个值当前所在的位置,以及一个 b 表示最终先序遍历有序的数组 从前往后遍历第 i 个元素:
本题属于以下题库,请选择所需题库进行购买
ScanQRCodePrompt
GoToPasswordLoginPrompt