用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心WEB研发

C# 堆栈实现

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-16 15:58:38
namespace Stack{
using System;
public class Stack
{
private Node first = null;
private int count = 0;
/***********************************************Property Procedures do not accept any parameters. Note the
diff in the function definition (no parenthesis)************************************************/
public bool Empty
{/*******************************************Property
GetProcedure********************************************/
get
{
return (first == null);
}
}
public int Count
{/*******************************************Property Get
Procedure********************************************/
get
{ return count; } }
public object Pop()
{
if (first == null)
{
throw new InvalidOperationException ("Cant pop from an empty stack");
}
else
{
object temp = first.Value;
first = first.Next;
count--;
return temp;
}
}
public void Push(object o)
{
first = new Node(o, first);
count++;
}
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;
}
}}
class StackTest{
static void Main()
{ Stack s = new Stack();
if (s.Empty)
Console.WriteLine("Stack is Empty");
else
Console.WriteLine("Stack is not Empty");
for (int i = 0; i < 5; i++)
s.Push(i);

Console.WriteLine("Items in Stack {0}", s.Count);

for (int i = 0; i < 5; i++)
Console.WriteLine("Popped Item is {0} and the count is {1}", s.Pop(), s.Count);
s = null;
}
}}//*********END OF CODE

//ASPHouse http://asphouse.yeah.net/




原作者:不详
来 源:不详


Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论

相关文章

PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:18,250.00000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号