hadi0x7c7
سه شنبه 09 آبان 1391, 09:24 صبح
سلام
دوستان کسی اطلاع داره که یک binary_tree رو میشه با serialization روی دیسک ذخیره کرد؟ در مورد btree چطور؟ این به فرض کلاس binary_tree هست؟
import java.util.Random;
class BinaryTree<E extends Comparable<E>> {
private TreeNode<E> root;
private static class TreeNode<T extends Comparable<T>> {
public T val;
public TreeNode<T> left, right;
public TreeNode(T val, TreeNode<T> left, TreeNode<T> right) {
this.val = val;
this.left = left;
this.right = right;
}
public void insert(T data) {
if (val.compareTo(data) < 0) {
if (right != null)
right.insert(data);
else
right = new TreeNode<T>(data, null, null);
} else if (val.compareTo(data) > 0) {
if (left != null)
left.insert(data);
else
left = new TreeNode<T>(data, null, null);
}
}
}
public BinaryTree() {
root = null;
}
public void add(E val) {
if (root == null)
root = new TreeNode<E>(val, null, null);
else
root.insert(val);
}
public void inorder() {
inorder(root);
}
public void inorder(TreeNode<E> node) {
TreeNode<E> prev = node;
if (node != null) {
inorder(prev.left);
System.out.print(prev.val + " ");
inorder(prev.right);
}
}
}
دوستان کسی اطلاع داره که یک binary_tree رو میشه با serialization روی دیسک ذخیره کرد؟ در مورد btree چطور؟ این به فرض کلاس binary_tree هست؟
import java.util.Random;
class BinaryTree<E extends Comparable<E>> {
private TreeNode<E> root;
private static class TreeNode<T extends Comparable<T>> {
public T val;
public TreeNode<T> left, right;
public TreeNode(T val, TreeNode<T> left, TreeNode<T> right) {
this.val = val;
this.left = left;
this.right = right;
}
public void insert(T data) {
if (val.compareTo(data) < 0) {
if (right != null)
right.insert(data);
else
right = new TreeNode<T>(data, null, null);
} else if (val.compareTo(data) > 0) {
if (left != null)
left.insert(data);
else
left = new TreeNode<T>(data, null, null);
}
}
}
public BinaryTree() {
root = null;
}
public void add(E val) {
if (root == null)
root = new TreeNode<E>(val, null, null);
else
root.insert(val);
}
public void inorder() {
inorder(root);
}
public void inorder(TreeNode<E> node) {
TreeNode<E> prev = node;
if (node != null) {
inorder(prev.left);
System.out.print(prev.val + " ");
inorder(prev.right);
}
}
}