内容正文:
选择性必修1《数据与数据结构》
第一章 数据与数据结构
1.2 数据的组织
1
情境导入——QWERTY键盘
打印机刚发明时,键盘左上角的字母顺序是“ABCDEF”。这个排列顺序让打字员打起来飞快,但是相邻字母频繁敲击长杆和字锤可能会卡在一起。为了解决卡键这个难题,打印机发明者肖尔斯请他的妹夫——一位数学家来帮忙。
这位数学家建议肖尔斯把键盘上那些英文字母中最常用的字母分开,以避免故障的发生。肖尔斯采纳了这个建议,将字母重新排列,形成了我们现在看到的“QWERTY”的布局。打字员使用这个键盘的时候,打字速度明显下降,也因此很少发生卡键的情况了。
至今很多人质疑“QWERTY”键盘布局的字频统计的科学性,这里我们可以使用Python语言赋值我们展开字频统计研究,下面是老师的一个程序样例,但数据样本比较小,分析结果存在一定局限。
情境导入——QWERTY键盘
运行程序样例,得到字频统计
瑞士计算机科学家沃斯(N.Wirth)曾指出“算法+数据结构=程序”
数据结构的概念
数据元素是数据的基本单位。有些情况下,数据元素也称为元素、结点、顶点、记录等。
图1.2.1 数据元素及其包含的数据项
图1.2.1所示二维表中,每一行实际内容(也称为一条记录)就是数据元素,而每个元素又由5个数据项(“代码”“名称”“最新价格”“动态市盈”“流通股本”)组成。
1. 数据元素(Data Element)
数据结构的概念
2. 数据类型(Data Type)
数据类型指的是具有相同性质的计算机数据的集合及在这个数据集合上的一组操作。
数据类型可以分为基本数据类型(也称为原子数据类型)和结构数据类型。
基本数据类型由计算机编程环境提供,编程者可以在编程时直接用系统提供的标识符进行定义,如Python编程语言中的整型、实型、布尔型等。
结构数据类型是在程序设计时利用基本数据类型构造出的、复合的新类型,这种新类型由用户根据实际需要定义,能较好地描述数据元素数据项组成以及数据元素之间的逻辑关系,方便用户根据数据之间逻辑关系的特点进行数据处理,如很多编程语言中提供的记录类型、集合等。
基本数据类型
结构数据类型
数据结构的概念
3. 数据结构(Data Structure)
数据结构指的是数据之间的相互关系,即数据的组