经典指数          
原因
2148
浏览数
0
收藏数
 

有一个类似结点的数据结构TreeNode,包含了val属性和指向其它结点的指针。其可以用来表示二叉查找树(其中left指针表示左儿子,right指针表示右儿子)。请编写一个方法,将二叉查找树转换为一个链表,其中二叉查找树的数据结构用TreeNode实现,链表的数据结构用ListNode实现。 给定二叉查找树的根结点指针root,请返回转换成的链表的头指针。

     举报   纠错  
 
切换
1 个答案

中序遍历,用递归的方法。

public class Converter {

private ListNode head=new ListNode(-1);

private ListNode q=head;

public ListNode treeToList(TreeNode root) {

// write code here

if(root!=null)

{

treeToList(root.left);

q.next=new ListNode(root.val);

q=q.next;

treeToList(root.right);

}

return head.next;

}

}

 
切换
撰写答案