<SCRIPT LANGUAGE="JavaScript">
function node(data){
this.data=data;
var Lnode;
var Rnode;
this.insert=function insert(newData)
{
if(newData<this.data)
{
if( this.Lnode==null)
{
this.Lnode=new node(newData);
}
else
{
this.Lnode.insert(newData);
}
}
else
{
if(this.Rnode==null)
{
this.Rnode=new node(newData);
}
else
{
this.Rnode.insert(newData);
}
}
}
}
function tree(){
var root ;
this.insertNode=function insertNode(newData)
{
if(this.root==null)
{
this.root=new node(newData);
this.index=0;
}
else
{
this.root.insert(newData);
}
}
this.inOrderTraversal=function inOrderTraversal()
{//中序便历
this.inOrder(this.root);
}
this.inOrder=function inOrder(N)
{
if (N!=null)
{
this.inOrder(N.Lnode);
//输出结果
document.write(N.data + " ");
this.inOrder(N.Rnode);
}
}
}
//test随便插入一些数字进来。
var T=new tree()
T.insertNode( 39);
T.insertNode( 69);
T.insertNode( 94);
T.insertNode( 47);
T.insertNode( 50);
T.insertNode( 72);
T.insertNode( 55);
T.insertNode( 41);
T.insertNode( 97);
T.insertNode( 73);
T.inOrderTraversal();
</SCRIPT>
本文介绍了一种使用JavaScript实现二叉树的方法,包括节点的创建、数据的插入及中序遍历过程。通过具体示例展示了如何构建一个简单的二叉树,并实现了其数据的有序输出。
922





