求解数据结构问题,本人学的不好,求大神解决。谢谢

1.写一个程序将一颗二叉树翻转(左右子树互换)注:二叉树以顺序存储形式保存,输入为一个序列,输出亦也一个序列,空节点以" "表示
2.写一个程序实现几个结点的联网,要求联网的代价尽可能小
注:输入为结点数,任意两节联网的代价,输出为需要连结的结点对

删除第1个到最后一个,总共移动的步骤是n·(n–1)/2,然后删除每一个的概率是1/n,两式相乘,就是复杂度表达式,是O(n)阶的。