zoukankan      html  css  js  c++  java
  • 二叉树与二叉排序树的创建

    创建二叉树

    #include <iostream>
    using namespace std;
    
    struct TreeNode
    {
        int val;
        TreeNode *left,*right;
    };
    
    /*void preOrderTraverse(TreeNode *p)
    {
        if(p)
        {
            cout<<p->val<<" ";
            preOrderTraverse(p->left);
            preOrderTraverse(p->right);
        }
    }*/
    
    void create(TreeNode *&p)
    {
        int k;
        cin>>k;
        if(k!=0)
        {
            p=new TreeNode;
            p->val=k;
            create(p->left);
            create(p->right);
        }
        else
            p=NULL;
    }
    
    int main()
    {
        TreeNode *root=NULL;
        create(root);
    
        //preOrderTraverse(root);
    }

    创建二叉排序树

    #include <iostream>
    using namespace std;
    
    struct TreeNode
    {
        int val;
        TreeNode *left,*right;
    };
    void Insertnode(TreeNode *&p,int k)
    {
        if(p==NULL)
        {
            p=new TreeNode;
            p->val=k;
            p->left=p->right=NULL;
            return;
        }
        /*if(k==p->val)  BST中不能有相等的值
            return;*/
        if(k<p->val)
            Insertnode(p->left,k);
        else
            Insertnode(p->right,k);
    }
    
    /*void CreateTree(TreeNode *root,int a[],int n)
    {
        root=NULL;
        int i;
        for(i=0;i<n;i++)
        {
            Insertnode(root,a[i]);
        }
    }*/
    
    void preOrderTraverse(TreeNode *p)
    {
        if(p)
        {
            cout<<p->val<<" ";
            preOrderTraverse(p->left);
            preOrderTraverse(p->right);
        }
    }
    
    int main()
    {
        int a[]={5,7,1,3,9,2,0,4,8,6};
        int i,n=10;
        TreeNode *root=NULL;
        for(i=0;i<n;i++)
            Insertnode(root,a[i]);
    
        preOrderTraverse(root);
        cout<<endl;
    
        return 0;
    }
  • 相关阅读:
    一句sql语句删除重复记录
    Remoting测试
    关于委托
    遍历打印文件夹中的word文档
    c# string类型的一个理解误区
    viewstate
    依赖注入与工厂模式Demo
    memcache配置实践
    201732 C#链接数据库实现登陆
    观察者设计模式[伪]
  • 原文地址:https://www.cnblogs.com/home123/p/6792290.html
Copyright © 2011-2022 走看看