1.队列C#单链表简单实现
class QueueData
{
T data;
public QueueData<T> nextQueueData;
public QueueData(T t, QueueData<T> nextQueueData)
{
this.data = t;
this.nextQueueData = nextQueueData;
}
}
class Queue<T>
{
QueueData<T> queue;
public Queue(QueueData<T> queue)
{
this.queue = queue;
}
public QueueData<T> DeQueueData()
{
if (queue == null)
return null;
QueueData<T> data = queue;
queue = queue.nextQueueData;
return data;
}
public void EnQueueData(T data)
{
if (queue == null)
queue = new QueueData<T>(data, null);
QueueData<T> temp = queue;
while (temp.nextQueueData != null)
{
temp = temp.nextQueueData;
}
temp.nextQueueData = new QueueData<T>(data, null);
}
}