Node
{ a;
public Node( a)
{ this.a=a; }
public A
{ get{ a;} {a=value;} }
public Node next;
}
LinkedList
{ protected Node header;
public void Generate( x)
{ (headernull)
header= Node(x);
{ Node n = Node(x);
n.next=header;
header=n;
}
}
public void Out
{ Node tmp=header;
while(tmp!=null)
{ Console.WriteLine(tmp.A);
tmp = tmp.next;
} } }
Stack : LinkedList
{ public void Push( x)
{ this.Generate(x); }
public Pop
{ (this.header null)
-1; // empty stack
n = header.A;
header = header.next;
n;
}
}
Test
{ void Main
{ Stack ss = Stack;
ss.Push(7);
ss.Push(78);
ss.Push(9);
ss.Push(2);
i = ss.Pop;
while(i != -1)
{ Console.WriteLine(i);
i = ss.Pop;
} } } }
最新评论