数据结构(学习)

本文介绍了数据结构的基本概念,包括数据、数元、数据对象和数据结构的定义,强调了数据抽象的重要性。同时,文章详细阐述了算法设计的要求,如正确性、可读性、健壮性和效率。此外,探讨了数据结构与C语言的关系,以及线性表的逻辑结构和存储方式,包括顺序存储和链式存储,并举例展示了线性表的操作,如插入和删除。
摘要由CSDN通过智能技术生成

1.1 数据结构的基本概念

  • 数据:输入到计算机能够被处理符号集合

  • 数元:数据基本单位

  • 数据对象:性质相同的数元集合

  • 数据结构:表、树、图、窗口、管理器

  • 数据类型:布尔型、整型(-32768~32767)、浮点型

    • 定义域

    • 操作数+-*/

原子类型(整型)、结构类型(指针)

  • 数据抽象(ADT)

    • 数据抽象

    • 信息隐蔽

  • ADT包含定义实现两个方面

1.2数据结构的内容

  1. 逻辑结构

    1. 集合结构

    2. 线性结构

    3. 树型结构

    4. 网状结构

  2. 存储结构:元素的表示和关系的表示

    1. 顺序存储(连续)

    2. 非顺序存储(任意配置)

  3. 运算集合

    增删改查

总结:什么是数据结构

按照一定的逻辑关系组织起来的一批数据

按照一定的映像方式存放在计算机中

并在其上定义运算集

1.3算法设计

算法是规则的有限集合,是为解决特定问题而规定的一系列操作。

算法的特性

  1. 有限性 有限步骤之内正常结束,不能形成无穷循环

  2. 确定性 算法中的每一个步骤必须有确定含义,无二义性

  3. 输入有多个或0个输入

  4. 输出 至少有一个或多个输出

  5. 可行性 原则上能精确进行,操作可通过已实现的基本运算执行有限次而完成

算法设计的要求

  1. 算法的正确性

    “正确”的含义大体上可以分为四个层次: (1)所设计的程序没有语法错误; (2)所设计的程序对于几组输入数据能够得出满足要求的结果; (3)所设计的程序对于精心选择的典型、苛刻而带有刁难性的几组输入数据能够得到满足要求的结果。 (4)程序对于一切合法的输入数据都能产生满足要求的结果。

  2. 可读性

    一个好的算法首先应该便于人们理解和相互交流,其次才是机器可执行。

    可读性好的算法有助于人对算法的理解,并且难懂的算法易于隐藏错误且难于调试和修改。

  3. <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值