資源簡(jiǎn)介
二叉樹遍歷圖形化界面展示,課程設(shè)計(jì)。能夠?qū)崿F(xiàn)前序、中序、后序遍歷。并實(shí)現(xiàn)良好的圖形化界面及單步演示功能。

代碼片段和文件信息
package?bs;
import?java.util.linkedList;
import?java.util.List;
import?java.util.Stack;
public?class?BinTreeTraverse2?{
static?int[]?array1?=?new?int[15];
static?int[]?array2?=?new?int[15];
static?int?temp?=?0;
static?int?count?=?0;
private?static?List?nodeList?=?null;
static?String?output?=?new?String(““);
public?static?void?visit(Node?node)?{
//?myEditor.textArea.setText(node.getData()+“?“);
output?+=?node.getData()?+?“?“;
array2[count++]?=?node.getData();
//?count++;
System.out.print(node.getData()?+?“?“);
//?output?+=?node.getData()+“?“;
}
//?create?binary?tree?from?array.the?data?stored?in?level-order
public?void?createBinTree()?{
nodeList?=?new?linkedList();
for?(int?i?=?0?len?=?array1.length;?i?
nodeList.add(new?Node(array1[i]));
}
int?len?=?array1.length;
int?lastRootIndex?=?(len?>>?1)?-?1;
for?(int?i?=?lastRootIndex;?i?>=?0;?i--)?{
Node?root?=?nodeList.get(i);
int?leftIndex?=?i?*?2?+?1;
Node?leftNode?=?nodeList.get(leftIndex);
//?Node?leftNode=new?Node(array[leftIndex]);//this?is?wrong
root.setLeft(leftNode);
//?最后的那個(gè)根節(jié)點(diǎn)一定是有左孩子的。右孩子則不一定
int?rightIndex?=?leftIndex?+?1;
if?(rightIndex?<=?len?-?1)?{
Node?rightNode?=?nodeList.get(rightIndex);
root.setRight(rightNode);
}
}
}
public?static?String?preOrder1()?{
BinTreeTraverse2?tree?=?new?BinTreeTraverse2();
tree.createBinTree();
count?=?0;
preOrder(nodeList.get(0));
System.out.println();
return?output;
}
public?static?String?inOrder1()?{
BinTreeTraverse2?tree?=?new?BinTreeTraverse2();
tree.createBinTree();
count?=?0;
inOrder(nodeList.get(0));
//?inOrderStack(nodeList.get(0));
System.out.println();
return?null;
}
public?static?String?postOrder1()?{
BinTreeTraverse2?tree?=?new?BinTreeTraverse2();
tree.createBinTree();
count?=?0;
//?postOrderStack(nodeList.get(0));
postOrder(nodeList.get(0));
System.out.println();
return?null;
}
public?static?void?preOrderStack(Node?root)?{
Stack?stack?=?new?Stack();
Node?p?=?root;
if?(p?!=?null)?{
stack.push(p);
while?(!stack.isEmpty())?{
p?=?stack.pop();
visit(p);
if?(p.getRight()?!=?null)
stack.push(p.getRight());
if?(p.getLeft()?!=?null)
stack.push(p.getLeft());
}
}
}
//?nonRecursion?inOrder?Traverse
public?static?void?inOrderStack(Node?p)?{
Stack?stack?=?new?Stack();
while?(p?!=?null?||?!stack.isEmpty())?{
//?push?all?LeftChildwhen?p?has?no?LeftChildthat?means?it‘s
//?rootit?should?be?visited
while?(p?!=?null)?{
stack.push(p);
p?=?p.getLeft();
}
if?(!stack.isEmpty())?{
p?=?stack.pop();
visit(p);
p?=?p.getRight();
}
}
}
//?nonRecursion?postOrder?Traverse
public?sta
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-05-18?19:15??二叉樹遍歷\
?????目錄???????????0??2014-05-18?19:15??二叉樹遍歷\BinaryTree1.1\
?????文件?????????301??2014-03-18?08:01??二叉樹遍歷\BinaryTree1.1\.classpath
?????文件?????????378??2014-03-18?08:01??二叉樹遍歷\BinaryTree1.1\.project
?????目錄???????????0??2014-05-18?19:15??二叉樹遍歷\BinaryTree1.1\.settings\
?????文件?????????598??2014-03-18?08:01??二叉樹遍歷\BinaryTree1.1\.settings\org.eclipse.jdt.core.prefs
?????目錄???????????0??2014-05-18?19:15??二叉樹遍歷\BinaryTree1.1\bin\
?????目錄???????????0??2014-05-18?19:15??二叉樹遍歷\BinaryTree1.1\bin\bs\
?????文件?????????968??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\BinTreeTraverse2$Node.class
?????文件????????4586??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\BinTreeTraverse2.class
?????文件?????????851??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\login$1.class
?????文件?????????781??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\login$2.class
?????文件?????????979??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\login$ImageButton.class
?????文件????????1251??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\login$NewPanel.class
?????文件????????1782??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\login.class
?????文件?????????963??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$1.class
?????文件?????????830??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$10.class
?????文件?????????831??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$11.class
?????文件?????????831??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$12.class
?????文件?????????831??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$13.class
?????文件?????????833??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$14.class
?????文件?????????833??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$15.class
?????文件?????????833??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$16.class
?????文件?????????833??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$17.class
?????文件?????????833??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$18.class
?????文件?????????833??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$19.class
?????文件?????????827??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$2.class
?????文件????????3238??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$3.class
?????文件?????????655??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$4.class
?????文件?????????824??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$5.class
?????文件?????????828??2014-05-05?22:58??二叉樹遍歷\BinaryTree1.1\bin\bs\myEditor$6.class
............此處省略25個(gè)文件信息
評(píng)論
共有 條評(píng)論