泛型的定义和调用

本文介绍了一个使用C#实现的泛型二叉树类及其节点类,包括节点的定义、二叉树的构建过程,并展示了如何通过具体实例创建二叉树。此外,还提供了一个通用加法方法的实现。

定义:

1.类定义:

using System.Collections.Generic;

   class nodes<T>
        {
            T data;
            nodes<T> Lnode, Rnode, Pnode;
            public T Data
            {
                set { data = value; }
                get { return data; }

            }
            public nodes<T> LNode
            {
                set { Lnode = value; }
                get { return Lnode; }
            }
            public nodes<T> RNode
            {
                set { Rnode = value; }
                get { return Rnode; }

            }

            public nodes<T> PNode
            {
                set { Pnode = value; }
                get { return Pnode; }

            }
          public nodes()
          { }
          public nodes(T data)
          {
              this.data = data;
          }

        }
2.方法:

T Add<T>(T a,T b)
{
    return a + b;
}

二.调用:

1.类:

  1. static nodes﹤string﹥ BinTree()  
  2.         {  
  3.             nodes﹤string﹥[] binTree = new nodes﹤string﹥[8];  
  4.             //创建结点  
  5.             binTree[0] = new nodes﹤string﹥("A");  
  6.             binTree[1] = new nodes﹤string﹥("B");  
  7.             binTree[2] = new nodes﹤string﹥("C");  
  8.             binTree[3] = new nodes﹤string﹥("D");  
  9.             binTree[4] = new nodes﹤string﹥("E");  
  10.             binTree[5] = new nodes﹤string﹥("F");  
  11.             binTree[6] = new nodes﹤string﹥("G");  
  12.             binTree[7] = new nodes﹤string﹥("H");  
  13.             //使用层次遍历二叉树的思想,构造一个已知的二叉树  
  14.  
  15.             binTree[0].LNode = binTree[1];  
  16.             binTree[0].RNode = binTree[2];  
  17.             binTree[1].RNode = binTree[3];  
  18.             binTree[2].LNode = binTree[4];  
  19.             binTree[2].RNode = binTree[5];  
  20.             binTree[3].LNode = binTree[6];  
  21.             binTree[3].RNode = binTree[7];  
  22.             //返回二叉树的根结点  
  23.             return binTree[0];  
  24.  
  25.         }

2.方法:

int a=3;

inb b=4;

int cc=Add<int>(3,4);

int cc=Add<int>(a,b);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值