Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用节点的键创建一个数组_Java_Arrays_Tree_Binary Tree_Heapsort - Fatal编程技术网

Java 使用节点的键创建一个数组

Java 使用节点的键创建一个数组,java,arrays,tree,binary-tree,heapsort,Java,Arrays,Tree,Binary Tree,Heapsort,我目前有一个二叉树设置,并希望创建一个带有键的数组,以便对它们执行堆排序操作。我该怎么做呢 以下是我目前拥有的: public static void main(String args[]) throws IOException { BufferedReader in = new BufferedReader(new FileReader("employee.txt")); String line; Heap employee = new Heap(); whi

我目前有一个二叉树设置,并希望创建一个带有键的数组,以便对它们执行堆排序操作。我该怎么做呢

以下是我目前拥有的:

public static void main(String args[]) throws IOException
{
    BufferedReader in = new BufferedReader(new FileReader("employee.txt"));
    String line;
    Heap employee = new Heap();

    while((line = in.readLine())!= null)
    {
        String[]text = line.split(" ");
        employee.insert(Double.parseDouble(text[0]), Double.parseDouble(text[1]));

    }
    in.close();
}

我使用的二叉树非常标准,但如果需要,我可以发布它。“text[0]”段是每个节点的键。

一种可能是将类与。树集可以像堆一样运行。这门课有很好的记录,但是如果你有更多的问题,可以提问

编辑

看一看。接受的答案显示了一个二叉树的实现。您现在需要的是该类中的排序函数实现,可以在插入元素时触发,也可以在需要时手动触发


我仍然不明白如何将树转换为堆,因为它们是不同的东西。我猜你的意思是树应该从左到右“读”,然后重新排列?

一种可能是将类与。树集可以像堆一样运行。这门课有很好的记录,但是如果你有更多的问题,可以提问

编辑

看一看。接受的答案显示了一个二叉树的实现。您现在需要的是该类中的排序函数实现,可以在插入元素时触发,也可以在需要时手动触发


我仍然不明白如何将树转换为堆,因为它们是不同的东西。我想你是说这棵树应该从左到右“读”,然后重新排列?

我不确定我们是否可以使用它。我们应该使用二叉树,所以我想知道如何根据密钥本身创建一个数组。二叉树你必须自己实现。如果需要更多帮助,您需要指定正在使用的密钥。或者你可以考虑使用一个现成的映射实现。我已经创建了二叉树。我使用的键是insert函数中的“text[0]”。目前它是从一个文本文件中读取的,行中的第一个数字是键,第二个是数据。我不确定我们是否可以使用它。我们应该使用二叉树,所以我想知道如何根据密钥本身创建一个数组。二叉树你必须自己实现。如果需要更多帮助,您需要指定正在使用的密钥。或者你可以考虑使用一个现成的映射实现。我已经创建了二叉树。我使用的键是insert函数中的“text[0]”。目前它正在从一个文本文件中读取,行中的第一个数字是键,第二个数字是该数据。