WPE|52wpe|我爱WPE

 找回密码
 注册会员
搜索
  • 2885查看
  • 1回复

主题

好友

248

积分

中级会员

发表于 2009-7-23 22:43:25 |显示全部楼层
本系列讲座仅供初学编程且能熟练掌握易语言者学习。本讲座只讲一些基本的编程算法和对应概念。如果愿以学,每篇都需细细研读,彻底搞懂。 写讲座很费时间。本人没有太多的业余时间。关键是水平实在有限,文笔实在是自犬,打字速度巨慢,所以讲座将不定期推出。当然,动力还是来自易友的支持和本人对易语言的感谢之情。算法需从头学起,先讲线性表吧。

线性表的概念
线性表作为最基本的数据结构,在编程中运用很广泛。线性表上的运算是比较简单和常用的,在研究线性表上的运算前,还是先讲讲线性表的有关概念。 何谓线性表? 现实生活中线性表的例子很多。如,英文字母表(A-Z)是线性表,其中每个字母就是一个数据元素(也称结点)。易语言中的一维数组也是线性表。每个数据成员就是结点。可以发现这些结点的之间的特点就像是用一根线一把珍珠串在一起成为一根珍珠链。任何一个珍珠最多和两个珍珠相连。 线性表(Linear List) 是由n(n>=0)个数据元素(结点)a1,a2,.....,an组成的有序序列。其中数据元素的个数n定义为表的长度。当n=0时称为空表。常常将非空线性表(n>0)记做:(a1,a2,.......,an)(排版局限就这样表示吧)。 线性表的逻辑结构前面以讲过,现在用专业的语句给大家描述一下。

线性表的逻辑特征,就是其结点的邻接关系。a1称为开始结点,它没有直接前趋(“直接前趋”,是指与它相邻且在它前面的结点。)而仅有一个直接后继,“直接后继”,是指与他相邻且在它后面的结点);an称为终端结点,它没有直接后继,而只有一个直接前趋。其余的内部结点ai(2<=i<n-1)(a后面的字母都是小下标,没办法表示时用括号括住,^_^),有一个直接前趋a(i-1),和直接后继a(i+1)。明白了线性表的逻辑结构后,编程时的很多问题与此类似时,就可以抽象为线性表。在用线性表上的运算方法进行运算。 在易语言中线性表的存储方式就是用一维数组。所以,我们把一维数组称为线性表。以后线性表上的运算,都是通过一维数组完成。线性表的其它存储结构在易语言中不易实现,不再我们现在的研究范围。

关于结的邻接关系就构成线性表的逻辑结构。其内容我们以讲过。结点是什么呢?结点是数据的载体,它可以是简单的变量类型,更多时候是复杂的自定义数据类型的变量。 线性表的运算。

易语言以提供了一维数组的运算方法。我们现在研究他们到底是怎么实现的。理由就是,很多时候 结点是很复杂的自定义数据类型的变量,这时的一维数组就无法用易语言提供的运算命令进行计算,这时就需要我们自己来写。 线性表上的运算是最简单的,也是每个想学算法的人首先和必需掌握的。下节我们在讲吧。 ^_^

主题

好友

14

积分

新手上路

发表于 2009-11-16 13:56:46 |显示全部楼层
继续  正好想学。
回复

使用道具 举报

快速发帖

您需要登录后才可以回帖 登录 | 注册会员

手机版|Archiver|WPE|52wpe|我爱WPE ( 闽ICP备15009081号 )

GMT+8, 2024-4-30 12:17 , Processed in 0.062238 second(s), 16 queries .

返回顶部