【发布时间】:2022-01-18 03:53:39
【问题描述】:
我必须从任何类型制作关于二叉树的源代码。这意味着输入是字符串,所以在我看来,我必须将字符串转换为 byte[ ] 然后从中获取 ASCII 码。但我不知道如何从字节制作二叉树或将字节[]转换为整数。我现在卡住了。
class Node{
int data;
Node left, right;
public Node(int data){
this.data = data;
Node left = right = null;
}
}
class BinaryTree{
public Node root;
public void newNode(int data){
if(root == null){
root = newNode(root, new Node(data));
}
}
private Node newNode(Node root, Node newData){
if(root == null){
root = newData;
return root;
}
if(newData.data < root.data){
root.left = newNode (root.left, newData);
}else{
root.right = newNode (root.right, newData);
}
return root;
}
public void inOrder(Node node){
if(node !=null){
inOrder(node.left);
System.out.println(node.data + " ");
inOrder(node.right);
}else{
return;
}
}
public void preOrder(Node node){
if(node !=null){
System.out.println(node.data +" ");
preOrder(node.left);
preOrder(node.right);
}else{
return;
}
}
public void postOrder(Node node){
if(node !=null){
preOrder(node.left);
preOrder(node.right);
System.out.println(node.data +" ");
}else{
return;
}
}
}
public class ALPROMOD5{
public static void main(String[] args) throws UnsupportedEncodingException {
Scanner scan = new Scanner(System.in);
String inp;
System.out.println("String to ASCII");
System.out.println("Binary Tree from Converted String to Char");
System.out.print("\nMasukan Inputan : ");
inp = scan.nextLine();
byte[] bt = inp.getBytes("US-ASCII");
System.out.print("ASCII Value of("+inp+") is : ");
System.out.println(Arrays.toString(bt));
}
}
【问题讨论】:
-
如果要将每个字符都获取为ASCII码,为什么需要字节数组?只需使用
String#toCharArray
标签: java arrays binary-search-tree