Beruflich Dokumente
Kultur Dokumente
1A.
1B.
package uas_struktur_data;
int value;
Node left;
Node right;
Node(int value) {
this.value = value;
right = null;
left = null;
}
}
package uas_struktur_data;
import java.util.*;
binaryTree.add(bilangan);
if(konfirmasi.equalsIgnoreCase("n") ||
konfirmasi.equalsIgnoreCase("no")) {
traversePreOrder(binaryTree.root);
}
}
if (current == null) {
return new Node(value);
}
return current;
}
if (value == current.value) {
// Case 1: no children
if (current.left == null && current.right == null) {
return null;
}
if (current.left == null) {
return current.right;
}
// Case 3: 2 children
int smallestValue = findSmallestValue(current.right);
current.value = smallestValue;
current.right = deleteRecursive(current.right, smallestValue);
return current;
}
if (value < current.value) {
current.left = deleteRecursive(current.left, value);
return current;
}
while (!nodes.isEmpty()) {
if (node.left != null) {
nodes.add(node.left);
}
if (node.right != null) {
nodes.add(node.right);
}
}
}
if (current.right != null)
stack.push(current.right);
if (current.left != null)
stack.push(current.left);
}
}
if (!hasChild || isPrevLastChild) {
current = stack.pop();
visit(current.value);
prev = current;
} else {
if (current.right != null) {
stack.push(current.right);
}
if (current.left != null) {
stack.push(current.left);
}
}
}
}
import java.util.*;
do {
System.out.print("Silakan inputkan bilangan : ");
bilangan = input.nextInt();
binaryTree.add(bilangan);
if(konfirmasi.equalsIgnoreCase("n") ||
konfirmasi.equalsIgnoreCase("no")) {
System.out.print("Pre-Order : ");
traversePreOrder(binaryTree.root);
System.out.print(" ");
System.out.print("In-Order : ");
traverseInOrder(binaryTree.root);
System.out.print(" ");
System.out.print("Post-Order : ");
traversePostOrder(binaryTree.root);
}
}
return current;
}
if (value == current.value) {
return true;
}
if (value == current.value) {
// Case 1: no children
if (current.left == null && current.right == null) {
return null;
}
// Case 2: only 1 child
if (current.right == null) {
return current.left;
}
if (current.left == null) {
return current.right;
}
// Case 3: 2 children
int smallestValue = findSmallestValue(current.right);
current.value = smallestValue;
current.right = deleteRecursive(current.right, smallestValue);
return current;
}
if (value < current.value) {
current.left = deleteRecursive(current.left, value);
return current;
}
while (!nodes.isEmpty()) {
if (node.left != null) {
nodes.add(node.left);
}
if (node.right != null) {
nodes.add(node.right);
}
}
}
if (current.right != null)
stack.push(current.right);
if (current.left != null)
stack.push(current.left);
}
}
if (!hasChild || isPrevLastChild) {
current = stack.pop();
visit(current.value);
prev = current;
} else {
if (current.right != null) {
stack.push(current.right);
}
if (current.left != null) {
stack.push(current.left);
}
}
}
}
= [ ( 13^2) - ( 35 ) ] / [ ( 6 ) + ( ( 50 ) - ( 20 ) ) ]
= [ 169 - 35 ] / [ 6 + 30 ]
= 134 / 36
= 3.7
2 (II) A.
2 (II) B.
2 (III) A.
3
I. Infix : ((A*B+(C/D)*E) – (((F*G)/(H*I)^J))
a. Perubahan infix menjadi postfix dan prefix
Postfix : EAB*CD/+*JFG*HI/^-
Prefix : -*E+*AB/CD^J/*FG*HI
b. Postfix : EAB*CD/+*JFG*HI/^-
Jika A = 5, B = I = 1, C = 11, D = 9, E = A, F = 11, G = 13, H = C, maka akan
diperoleh : A51*119/+*J1113*C1*/^-
II. Hasil Operasi :
Top(S) = Cintia
Create(S) = Top(S) = Cintia, Top = 1, NOEL(S) = 3
Isempty(S) = FALSE
POP(S) = TOP(S) = Anggia, TOP = 1, NOEL(S) = 1
NOEL(S) = 3
Push(Dina, Agis) = {Anggia, Budi, Cintia, Dina, Agis}