当前位置导航:炫浪网>>网络学院>>编程开发>>Visual C#教程

浅析C#语言实现堆和队列数据结构

  
  1,线性聚集基础
  在数据结构层次中最高层次的抽象是一个聚集,在这个聚集分为两个大类;第一类是线性聚集;另一种是非线性聚集。
  
  线性聚集可以根据其命名知道是按照一种线性次序进行排序的。在线性聚集中又根据存取不同分为:广义索引、直接存取和顺序存取三类。广义索引包括字典和散列表;直接存储包括有数组、文件以及记录;顺序存取包括:表、栈、队列和优先队列。非线性队列可以层次聚集和群聚集来分,其中层次聚集中包括数和堆;群聚集中包括集合和图.
  
  2,栈和C#构建栈
  栈是一种最长常使用和最重要的数据结构,栈通常在用于处理语法识别、表达计算等方面。栈是在上面提到过的过的顺序表中的一种,这种顺序表特点是后进先出(Last In First Out)。
  
  栈主要两种典型的抽象数据类型:顺序栈和连式栈。
  
  通常我们都将对于采用数组存储的栈方式称做顺序栈,下面我通过C#语言给大家写一个简单的顺序栈。如图1所是。
  
 

  
图1,数组实现栈的数据结构

  对于另外一种使用链表做存储的栈,我们将其称做连式栈。同样我们通过一个程序实现一个连式栈。如图2所示.
  
 

  
图2,链表实现栈的数据结构

  
  3,队列和C#构建队列
  队列和栈都是属于线性表,队列和栈在本质上的区别是在存取方式上面的,队列使用的是先进先出(First In First Out)的方式实现数据的存取。通常运用在多消息处理上面,按照队列的顺序处理。下面通过一个C#实例实现队列,图3
  

  
图3,链表实现队列的数据结构

  
  4,总结
  本文重点讲述了数据结构中线性表的栈和队列,并且通过C#代码去实现一些实例。
相关内容
赞助商链接