技术文章 > 用C#的类实现数据结构的堆栈算法

用C#的类实现数据结构的堆栈算法

2018-08-19 21:11

文档管理软件,文档管理系统,知识管理系统,档案管理系统的技术资料:
[code]
csharp
using System;

namespace DataStructure
{
///
/// Class1 的摘要说明。
///
public class Stack//栈类
{
private int count = 0;
private Node first = null;//定义首结点

///
/// 堆栈是否为空?
///

public bool Empty
{
get
{
return (first == null);
}
}
///
/// 堆栈成员数量
///

public int Count
{
get
{
return count;
}
}

///
/// 出栈
///

///
public object Pop()
{
if (first == null)
{
throw new InvalidOperationException("Can not 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++;
}

public Stack()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
}

///
/// 结点类
///

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;
}
}
}
[/code]