Java 有序二叉树,使用树排序按升序打印字符串
好的,我的目标是从标准输入中逐行读取(每行上只有一个字符串),将它们插入到树中,然后按升序对字符串进行排序并打印出来Java 有序二叉树,使用树排序按升序打印字符串,java,sorting,binary-tree,Java,Sorting,Binary Tree,好的,我的目标是从标准输入中逐行读取(每行上只有一个字符串),将它们插入到树中,然后按升序对字符串进行排序并打印出来 java.util.ArrayList$Itr@659e0bfd 问题: 这是什么意思 return elementsList.iterator(); ?我如何在我的主屏幕中使用它 public class OBTComparable<Type extends Comparable<Type>> { ... private Type data
java.util.ArrayList$Itr@659e0bfd
问题:
这是什么意思
return elementsList.iterator();
?我如何在我的主屏幕中使用它
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
公共类
{
...
私有类型数据;
...
公共迭代器元素sascending()
{
ArrayList elementsList=新的ArrayList();
增编符号(元素列表);
return elementsList.iterator();
}//elementsAscending
私有无效补遗SCENDING(列表元素列表)
{
如果(!空)
{
左图。添加元素符号(元素列表);
元素列表添加(数据);
右图。增编符号(元素列表);
}//如果
}//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); };
publicstaticvoidmain(字符串[]args)
{
obt可比obt=新obt可比();
缓冲读取器
=新的BufferedReader(新的InputStreamReader(System.in));
尝试
{
弦线;
而((line=reader.readLine())!=null)
obt.insert(行);
obt.elementsascensing();
System.out.println(obt.elementsAscending());
//////这里需要帮助吗/////
}catch(ioe){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);
}
字符串行;
而((line=reader.readLine())!=null)
obt.insert(行);
迭代器t=obt.elementsAscending();
while(t.hasNext())
{
String item=t.next();
系统输出打印项次(项);
}
现在感觉很好:D.你需要实现你自己的BST吗?是的,因为我是一个初学者。如果你有任何建议,请与我分享。我想学习如何实现它。可能需要几行代码,但是……如果你将它设为BST,那么按顺序遍历树会得到排序的顺序。很难说,但它不会错k就像这里有一个有效的BST一样。插入时只需维护BST规则,然后有一个方法按顺序遍历树。