首页 >> C#.NET >> 正文
浅析C#语言实现堆和队列数据结构
来源:Dotnet频道 作者:采集 时间:2008-3-31


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

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

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

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

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

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

  
  4,总结
  本文重点讲述了数据结构中线性表的栈和队列,并且通过C#代码去实现一些实例。
相关新闻
相关评论
 
评论表单加载中...
 
C#.NET文章

 在Visual C++应

 编辑:admin

 时间:2008-3-10


   .NET Framework 中多语言支持的实现-.NET Framework
   将Eiffel系统集成到.NET Framework中-.NET Framework
   04年五种常用RAD的测验比较(1)-.NET Framework
   04年五种常用RAD的测验比较(2)-.NET Framework
   04年五种常用RAD的测验比较(3)-.NET Framework
最新文章
   .NET Framework 中多语言支持的实现-.NET Framework
   将Eiffel系统集成到.NET Framework中-.NET Framework
   04年五种常用RAD的测验比较(1)-.NET Framework
   04年五种常用RAD的测验比较(2)-.NET Framework
   04年五种常用RAD的测验比较(3)-.NET Framework
总站搜索
搜索
 
热门文章
   oracle数据库文件中的导入\导出
   用Oracle10g列值掩码技术隐藏敏感数据
   VB程序中用ADO对象动态创建数据库和表-VB.NET
   用VB6写简单程序 让电骡自动关机-VB.NET
   使用.NET2.0编写COM组件供VB调用-VB.NET
   VB.NET:键盘控制焦点移动-VB.NET
   用VB.NET绘制GDI图形-VB.NET
   vb.net中应用 ArrayList 实例-VB.NET
 
推荐文章
ASP.NET中的状态管理-ASP.NET
VC、IE、ASP环境下打印、预备的完美解决方案
oracle数据库文件中的导入\导出
VB.NET中快速访问注册表技巧-VB.NET
在vb中实现超连接的方法!和直接发邮件-VB.NET
用VB做realplayer播放列表-VB.NET
在VB.NET中如何实现和利用SortedLists-VB.NET
利用VB.NET Stopwatch对象记录时间-VB.NET
成都古羌科技有限公司版权所有: Copyright@2007-2010 ,ALL Rights Reserved 蜀ICP备07017240号