二叉排序树的插入创建与查找
来源:互联网 发布:阿里云配置vpn 编辑:程序博客网 时间:2024/04/29 19:02
import java.util.Scanner;public class BinarySortTree{ private static int flag=0; //定义结点 public static class Node{private int data;private Node left=null;private Node right=null;public Node(int data){this.data=data;}//用插入算法创建二叉查找树public static void insert(Node node,int data){if(data>node.data){if(node.right==null){node.right=new Node(data);}else{insert(node.right,data);}}else if(data<node.data){if(node.left==null){node.left=new Node(data);}else{insert(node.left,data);}}}//中序遍历输出public static void midPrint(Node root){if(root.left!=null){midPrint(root.left);}System.out.print(root.data+" ");if(root.right!=null){midPrint(root.right);}}//查找函数public static void search(Node root,int data){//System.out.println(root.data);if(root.data ==data){flag=1;}if(data>root.data && root.right!=null ){search(root.right,data);}if(data<root.data && root.left!=null){search(root.left,data);}}public static void main(String[] args) {//{37,56,05,13,19,21, 64, 88, 75,80,92}int[] a={37,56,05,13,19,21, 64, 88, 75,80,92};System.out.println("要创建的数组为:{37,56,05,13,19,21, 64, 88, 75,80,92}");Node root=new Node(37);for(int i=1;i<a.length;i++){insert(root,a[i]);}System.out.println("创建好的二叉排序树中序遍历结果为:");midPrint(root);System.out.println("请输入要查找的数字:");int n=3;Scanner in=new Scanner(System.in);while(n-->0){int data=in.nextInt();search(root,data);if(flag==1){System.out.println("查找成功");}else{System.out.println("查找失败");}flag=0;}}}}
0 0
- 二叉排序树的插入创建与查找
- 二叉排序树的创建与查找
- 二叉排序树的创建,查找,插入,删除
- 数据结构 二叉排序树的创建,查找,插入,删除
- 七、二叉排序树--(2)二叉排序树的创建/插入/查找/删除
- 二叉排序树的插入与查找实现
- 二叉排序树的查找、插入与删除算法
- 动态查找表之二叉排序树(BST)的 创建、查找、插入与删除
- 二叉排序树的查找、插入
- 树形结构的查找(二叉排序树-创建、查找、插入、删除)
- 二叉排序树的创建查找与删除
- 二叉排序树的创建,查找与删除
- 二叉排序树创建、插入节点、查找节点的实现
- 算法与数据结构(十) 二叉排序树的查找、插入与删除
- 二叉排序树的查找、删除、插入
- 二叉排序树的插入,查找,删除
- 二叉排序树的查找-插入-删除
- 二叉排序树的创建,插入,遍历
- 自我讲解
- 用好SciTE的缩写功能
- 有关Nginx的反向代理和负载均衡
- java网络编程(上)
- 几种数据可视化框架分析
- 二叉排序树的插入创建与查找
- Qt之TableWidget、信号、槽
- android studio设置
- BUYING FEED
- 【python】【leetcode】【算法题目383—Ransom Note】
- Mybatis-Mapper.xml输入输出映射
- 解决java compiler level does not match the version of the installed java project facet
- Java 继承与多态(二)
- 折半查找