当前位置:首页 » 编程语言 » java树排序

java树排序

发布时间: 2022-08-18 13:55:53

❶ 找一个java程序:关于二叉树的建立和排序

从键盘接受输入(先序),以二叉链表作为存储结构,建立二叉树(以先序来建立)
结果不是唯一

❷ JAVA如何将英文字母进行二叉树排序

如果仅限于java,而且是实际应用,java里有一个叫做TreeSet的东西,是个有序的树结构。Sring类型的英文字符可在里面自排序。

如果是考试,应该是靠你如何实现一个类似于TreeSet的东西

❸ 计算机C语言数据结构javaIT二叉排序树的构造

字符串的大小是逐字符比较,比较字符的ascii码。
排序树,可以是左树比根节点大,右树比它小,或者反过来也行。这样就是有序的,可以从根开始查找串。

❹ java二叉排序树问题

给分!!!!!!:....还行不难写....其实我很怀念学C时写树......
class TreeNode 数据结构
class SortTree 实现树的建立 和 中序遍历

public class TreeNode
{
public TreeNode left;
public TreeNode right;
public Integer value;

TreeNode ( Integer value )
{
this.value = value;
System.out.println(value);
}
}

public class SortTree
{
SortTree(Integer...integers)
{
createSortTree(integers);
}

private TreeNode root;

private void createSortTree(Integer[] integers)
{
for(Integer nodeValue:integers)
{
if(root == null)
{
System.out.println("Create Root");
root = new TreeNode(nodeValue);
}
else if(root.value > nodeValue)
{
insertLeft(root , nodeValue);
}
else
{
insertRight(root , nodeValue);
}
}
}

private void insertLeft(TreeNode root2, Integer nodeValue)
{
if(root2.left == null)
{
System.out.println("Create Left");
root2.left = new TreeNode(nodeValue);
}
else if(root2.left.value > nodeValue)
{
insertLeft(root2.left,nodeValue);
}
else
{
insertRight(root2.left,nodeValue);
}

}

private void insertRight(TreeNode root2, Integer nodeValue)
{
if(root2.right == null)
{
System.out.println("Create Right");
root2.right = new TreeNode(nodeValue);
}
else if(root2.right.value > nodeValue)
{
insertLeft(root2.right,nodeValue);
}
else
{
insertRight(root2.right,nodeValue);
}
}

private void middleTraversing(TreeNode root)
{
if(root.left !=null) /** 第一步访问左子树 */
middleTraversing(root.left);
System.out.println(root.value); /** 第二步访问根结点 */
if(root.right !=null)
middleTraversing(root.right); /** 第三步访问右子树 */
}

public TreeNode getRoot()
{
return root;
}

public static void main (String[] args)
{
SortTree tree = new SortTree(new Integer(5),new Integer(6),new Integer(4),new Integer(3),new Integer(7));
System.out.println("MiddleTraversing:");
tree.middleTraversing(tree.getRoot());
}
}

❺ java二叉排序树,已有代码,如何调通输出

你好,很高兴回答你的问题。

目前已经有了二叉树以及二叉树节点的类。

需要一个main方法,在其中创建节点(通过节点类的构造方法),构建树(通过树的构造方法以及insert方法)。可以执行查询的方法以及展示的方法。

如果有帮助到你,请点击采纳。

❻ java二叉树排序问题

importjava.util.TreeSet;
publicclassStudentTest{
publicstaticvoidmain(String[]args){
TreeSet<Student>ts=newTreeSet<>();
for(;ts.size()<10;){
Stringname="同学"+(char)((Math.round(Math.random()*26+65)));
intid=(int)(Math.round(Math.random()*80+10));
floatfl=(int)Math.floor(Math.random()*50+40);
ts.add(newStudent(name,fl,id));
}
for(Studenta:ts){
System.out.println(a);
}
}
}
<Student>{
privateStringname;
privateFloathp;
privateintid;
publicStudent(Stringname,floathp,intid){
this.name=name;
this.hp=hp;
this.id=id;
}
publicStringtoString(){
return"(name:"+name+"id:"+id+"hp:"+hp+")";
}
publicintgetId(){
returnid;
}
publicintcompareTo(Studentstu){
returnInteger.compare(this.id,stu.getId());
}
}

❼ java实现对树形结构(文件夹式)数据数组进行排序

这个问题本质上就是个数据结构的问题,所谓排序和查找效率依赖的是算法和数据结构的配合,你现在定下了链表(没有具体说明的话,这里应该指的是单向链表吧)、数组和二叉树,这几个之中,那排序和查找的数据就看用什么算法和相应的数据结构配合了~~~

排序算法中,快速排序是最快的,比较适合用链表来处理,但是链表的查找是比较慢的(双向链表的话可以加快查找速度)。
数组排序会比较慢,不是算法的问题,而是数组的调整因为需要位移,但是数组一旦排号顺序后,查找是很快的——折半查找。
二叉数较为平局,排序可以采用堆排序,查找可以建二叉排序树来找(用B+或B-树的话可以更快)。

个人看法,不一定对,欢迎拍砖,具体代码知道算法了就自己上网找吧。

❽ 如何在java中创建二叉排序树

试试这些代码:
private BinaryNode<T> remove(T x,BinaryNode<T> p,BinaryNode<T> parent){
if(p==null){
return null;
}
if(x.compareTo(p.data)>0){
return remove(x,p.left,p);
}
if(x.compareTo(p.data)<0){
return remove(x,p.right,p);
}
if(p.left!=null&&p.right!=null){
BinaryNode<T> insucc=p.right;

while(insucc.left!=null){
insucc=insucc.left;
}
p.data=insucc.data;
return remove(p.data,p.right,p);
}
if(parent==null){
if(p.left!=null){
root=p.left;
}
else root=p.right;
return p;
}
if(p==parent.left){
if(p.left!=null){
parent.left=p.left;
}
else{
parent.left=p.right;
}
}
else{
if(p.left!=null){
parent.right=p.left;
}
else{
parent.right=p.right;
}
}
return p;
}

热点内容
地铁逃生怎么进入游戏安卓 发布:2024-05-03 17:49:35 浏览:992
aws云存储 发布:2024-05-03 17:48:50 浏览:954
安卓微信王者号怎么转成苹果 发布:2024-05-03 17:44:38 浏览:745
原子类源码 发布:2024-05-03 17:44:19 浏览:165
安卓浏览图片如何全屏 发布:2024-05-03 17:24:08 浏览:104
传奇仓库脚本 发布:2024-05-03 17:23:56 浏览:541
2010数据库技术及应用 发布:2024-05-03 17:21:51 浏览:921
小米账号密码忘了怎么 发布:2024-05-03 17:17:44 浏览:780
皇家农场脚本 发布:2024-05-03 16:46:41 浏览:458
顺序存储链式存储 发布:2024-05-03 16:46:41 浏览:879