Java |
public class Stack
{
private Node first = null;
public boolean isEmpty() {
return (first == null);
}
public Object pop() throws Exception{
if (first == null)
throw new Exception("Can't Pop from an empty Stack.");
else {
Object temp = first.Value;
first = first.Next;
return temp;
}
}
public void push(Object o) {
first = new Node(o, first);
}
class Node {
public Node Next;
public Object Value;
public Node(Object value) {
this(value, null);
}
public Node(Object value, Node next) {
Next = next;
Value = value;
}
}
}
|
|
C# |
public class Stack
{
private Node first = null;
public bool Empty {
get {
return (first == null);
}
}
public object Pop() {
if (first == null)
throw new Exception("Can't Pop from an empty Stack.");
else {
object temp = first.Value;
first = first.Next;
return temp;
}
}
public void Push(object o) {
first = new Node(o, first);
}
class Node
{
public Node Next;
public object Value;
public Node(object value): this(value, null) {}
public Node(object value, Node next) {
Next = next;
Value = value;
}
}
}
|
|