zoukankan      html  css  js  c++  java
  • C#数据结构-线性表

    理论基础:  

       线性表是最简单、最基本、最常用的数据结构。线性表是线性结构的抽象(Abstract),线性结构的特点是结构中的数据元素之间存在一对一的线性关系。这种一对一的关系指的是数据元素之间的位置关系,即:

        (1)除第一个位置的数据元素外,其它数据元素位置的前面都只有一个数据元素;

        (2)除最后一个位置的数据元素外,其它数据元素位置的后面都只有一个元素。

          也就是说,数据元素是一个接一个的排列。因此,可以把线性表想象为一种数据元素序列的数据结构。

         线性表(List)是由n(n≥0)个相同类型的数据元素构成的有限序列.

         注意:“有限”,指的是线性表中的数据元素的个数是有限的,线性表中的每一个数据元素都有自己的位置(Position)。本书不讨论数据元素个数无限的线性表。

             “相同类型”,指的是线性表中的数据元素都属于同一种类型。

     C#实现:

         1接口

          由于现在只考虑线性表的基本操作,所以以C#接口的形式表示线性表,接口中的方法成员表示基本操作。并且,为了使线性表对任何数据类型都适用,数据元素的类型使用泛型的类型参数。在实际创建线性表时,元素的实际类型可以用应用程序中任何方便的数据类型来代替,比如用简单的整型或者用户自定义的更复杂的类型来代替。
           线性表的接口如下所示。

    Code

        2 实现

         实现过程中,算法时间复杂度没有做过多的考虑和计算,有兴趣的朋友可以完成

    Code

    以上代码用C#实现了线性表的操作,具体的测试没有做,有兴趣的朋友,可以写一个简单的测试程序,

    如有问题,请及时告知!谢谢!

      

       路曼曼其修远兮,吾将上下而求索
  • 相关阅读:
    进度条
    html5 表单新增事件
    html5 表单的新增type属性
    html5 表单的新增元素
    html5 语义化标签
    jq 手风琴案例
    codeforces 702D D. Road to Post Office(数学)
    codeforces 702C C. Cellular Network(水题)
    codeforces 702B B. Powers of Two(水题)
    codeforces 702A A. Maximum Increase(水题)
  • 原文地址:https://www.cnblogs.com/Richet/p/1311589.html
Copyright © 2011-2022 走看看