加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 简单二叉树

发布时间:2020-12-15 08:33:55 所属栏目:百科 来源:网络整理
导读:所以,过去一个月我一直在学习C#,而目前我正在与Binary Trees进行斗争. 我的问题是,如何将我的树调用到控制台窗口? 我试过Console.WriteLine(tree.Data);但这似乎写54到我的控制台窗口. 如果你需要检查一下,这是我的代码: 主文件 static void Main(string[]
所以,过去一个月我一直在学习C#,而目前我正在与Binary Trees进行斗争.

我的问题是,如何将我的树调用到控制台窗口?
我试过Console.WriteLine(tree.Data);但这似乎写54到我的控制台窗口.

如果你需要检查一下,这是我的代码:

主文件

static void Main(string[] args)
{
    //Creating the Nodes for the Tree
    Node<int> tree = new Node<int>('6');
    tree.Left = new Node<int>('2');
    tree.Right = new Node<int>('5');  

    Console.WriteLine("Binary Tree Display");
    Console.WriteLine(tree.Data);
    Console.ReadLine();
}

节点类

class Node<T> where T : IComparable
{
    private T data;
    public Node<T> Left,Right;

    public Node(T item)
    {
        data = item;
        Left = null;
        Right = null;
    }
    public T Data
    {
        set { data = value; }
        get { return data; }
    }
}

有没有其他方法可以调用我的树?或者我做错了什么?

解决方法

它之所以显示54是因为那就是(int)’6’是什么!

你正在调用tree.Data,在这种情况下返回’6’强制转换为int.

我想你要做的就是返回6,你可以通过使用来做

new Node<char>('6');

或者

new Node<int>(6);

(More in separate answer,removed for clarity)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读