java - 有序二叉树,使用树排序按升序打印字符串

标签 java sorting binary-tree

好吧,我的目标是从标准输入(每行一个字符串)中逐行读取,将它们插入树中,然后按升序对字符串进行排序并打印出来。它打印

java.util.ArrayList$Itr@659e0bfd

问题: 这是什么意思

return elementsList.iterator();

?如何在我的 main 中使用它?

public class OBTComparable<Type extends Comparable<Type>>
{
  ... 
  private Type data;
  ...
  public Iterator elementsAscending()
  {
    ArrayList<Type> elementsList = new ArrayList<Type>();
    addElementsAscending(elementsList);
    return elementsList.iterator();
  } // elementsAscending

  private void addElementsAscending(List elementsList)
  {
    if (!empty)
    { 
      left.addElementsAscending(elementsList);
      elementsList.add(data); 
      right.addElementsAscending(elementsList);
    } // if
  } // addElementsAscending 

现在主要是:

public static void main(String[] args)
{
  OBTComparable<String> obt = new OBTComparable<String>();
  BufferedReader reader
    = new BufferedReader(new InputStreamReader(System.in));

  try
  {
    String line;
    while ((line = reader.readLine()) != null)
      obt.insert(line);
    obt.elementsAscending();
    System.out.println(obt.elementsAscending()); 
    ////// NEED HELP HERE /////


  } catch (IOException e) { System.out.println(e); };  

最佳答案

好的,我修好了。

String line;
  while ((line = reader.readLine()) != null)
      obt.insert(line);
    Iterator<String> t = obt.elementsAscending();
    while (t.hasNext())
    {
      String item = t.next();
      System.out.println(item);
    }

现在感觉很好 :D。

关于java - 有序二叉树,使用树排序按升序打印字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29950699/

相关文章:

java - 从 jar 文件执行 Flyway 迁移

Mysql查询为每次迭代按顺序对记录进行排序?

algorithm - 是否可以将元素插入复杂度低于 O(n) 最坏情况的 BST?

c++ - 使用中序遍历在 C++ 中评估表达式树

java - 使用 .class 对象有什么意义?

java - 丢失具有 JPA 唯一约束的事务?

scala - Scala排序是否稳定?

java - 根据另一个列表的值对列表进行排序 - Java

binary-tree - 在.dot树中强制执行水平节点排序

java - 如何使用映射器将自定义查询字符串附加到 grails 资源?