c#二叉排序树实现
来源:互联网 发布:厦门威尔软件 编辑:程序博客网 时间:2024/06/05 12:48
主要是二叉排序树的构建和显示
using System;using System.Collections;using System.Runtime.InteropServices;using System.Text;public class Node{ public int data; public Node left; public Node right; public void print() { Console.WriteLine(data); //打印数据 }}public class BinarySearchTree{ public Node Root; public BinarySearchTree() { Root = null; } public void Insert(int i) { Node newnode=new Node(); newnode.data = i; //赋予新的值 if (Root == null) { Root = newnode; //将这个节点作为根节点 return; } Node current=Root; while (true) { if (i < current.data) {//如果这个节点比当前节点小 if(current.left!=null) current = current.left; else { current.left = newnode; break; } } else { if (current.right != null) current = current.right; else { current.right = newnode; break; } } } } //中序遍历二叉树 public void show(Node theroot) { if (theroot != null) { show(theroot.left); theroot.print(); show(theroot.right); } } //查找最大值 public int showMin() { Node current = Root; while (current.left!=null) { current = current.left; } return current.data; } public int showMax() { Node current = Root; while (current.right != null) current = current.right; return current.data; } public bool Find(int i) {//查找某一节点是否在树中 Node current = Root; while (current!=null) { if (i < current.data) { current = current.left; } else if (i > current.data) { current = current.right; } else { return true; } } return false; }}public class Test{ public static void Main() { BinarySearchTree node=new BinarySearchTree(); node.Insert(5); node.Insert(4); node.Insert(6); node.Insert(3); node.Insert(1); node.show(node.Root); Console.WriteLine("最大值:"+node.showMin()); Console.WriteLine("最小值:"+node.showMax()); Console.WriteLine("这个节点:"+node.Find(4)); }}
0 0
- c#二叉排序树实现
- 二叉排序树实现
- 实现二叉排序树
- 实现二叉排序树
- pascal语言实现二叉排序树
- 二叉排序树的实现
- 二叉排序树 C语言实现
- 二叉排序树的简单实现
- C实现二叉排序树
- 二叉排序树的实现
- 二叉排序树的实现
- 二叉排序树的实现
- 二叉排序树的实现
- 二叉排序树的简单实现
- 二叉排序树C实现
- 二叉排序树_Java简单实现
- 简单实现的二叉排序树
- 二叉排序树的简单实现
- usb驱动程序设计
- hook(钩子)技术
- Linux操作命令之ipmitool命令参数详解(中文翻译总结)
- 第十四周 验证分块查找算法
- 第十三周 项目1最小生成树的普里姆算法
- c#二叉排序树实现
- Android检查调试器
- this.class.getClassLoader().getResourceAsStream
- Web Driver 自动化测试-窗口间的切换
- Android开发之实现多次点击事件
- Android Activity之间传递图片(Bitmap)的方法
- 彻底解决Spring MVC 中文乱码 问题
- JavaSE部分编程练习题整理
- python单例类的另一种写法