二叉搜索属与双向链表
题目分析
- 排序链表:因为题目要求为排序的双向循环链表,二叉树只有左根右是排序的,左小,根节点,右大满足题目要求,因此使用中序遍历
- 双向链表:题目要求说左节点是当前节点的前节点pre,右节点是当前节点的next
- 循环链表:链表头节点head和尾节点tail互相指向,head.left = tail,tail.right = head;
打印中序遍历
// 打印中序遍历 void dfs(Node root) { if(root == null) return; dfs(root.left); // 左 System.out.println(root.val); // 根 dfs(root.right); // 右 }
- 中序遍历树的各个节点,然后构建当前节点的左右节点也就是left和right
题解
说来说去就是按照中序遍历,找到头节点然后遍历左子树,找到根节点,然后遍历右子树 结束
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。