2022-9-12

41 阅读1分钟

算法

递归交换左右子树即可

/**
 * @param {TreeNode} root
 * @return {TreeNode}
 */
 var invertTree = function(root) {
  if (root === null) {
       return null;
   }
  let temp=root.left;
  root.left=root.right;
  root.right=temp;

  root.right=invertTree(root.right);
  root.left=invertTree(root.left);
  return root;

};

ts

ConCat

// ============= Test Cases =============
import type { Equal, Expect } from './test-utils'

type cases = [
  Expect<Equal<Concat<[], []>, []>>,
  Expect<Equal<Concat<[], [1]>, [1]>>,
  Expect<Equal<Concat<[1, 2], [3, 4]>, [1, 2, 3, 4]>>,
  Expect<Equal<Concat<['1', 2, '3'], [false, boolean, '4']>, ['1', 2, '3', false, boolean, '4']>>,
]


// ============= Your Code Here =============
// 利用解构符号...实现
type Concat<T extends any[], U extends any[]> = [...T,...U]