-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathNode.java
More file actions
38 lines (28 loc) · 914 Bytes
/
Node.java
File metadata and controls
38 lines (28 loc) · 914 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/*
Generic Node Class
NetID: EXR180014
Author: Erik Rodriguez
*/
public class Node <G extends Comparable<G>> implements Comparable{
private Node<G> left;
private Node<G> right;
private G payload;
public Node(G payload) { // overloaded
this.payload = payload;
}
public Node() { } // default constructor
public void setPayload(G payload) { this.payload = payload; }
public void setLeft(Node<G> left) { this.left = left; }
public void setRight(Node<G> right) { this.right = right; }
public Node<G> getLeft() { return left; } // Accessors and mutators
public Node<G> getRight() { return right; }
public G getPayload() { return payload; }
@Override
public int compareTo(Object o){
int val = 0;
if (o instanceof Node){
val = payload.compareTo(((Node<G>)o).payload);
}
return val;
}
}