数据结构与算法

本文详细介绍了算法的定义、特性及设计要求,包括有穷性、确定性、可行性、输入和输出,以及正确性、可读性和健壮性的考虑。同时,阐述了算法的时间和空间复杂度对效率的影响。接着,探讨了数据结构的基本概念,如数据元素、结构、数据结构的逻辑与存储结构,并分类为线性结构和非线性结构,分别以线性表和树形结构为例。此外,还讨论了数据结构中的常见运算,如插入、删除、更新、排序和检索。
摘要由CSDN通过智能技术生成

一、算法
1.算法的定义:算法是指解题方案的准确而完整的描述。
2.算法的基本特性
(1)有穷性:一个算法应包含有限个操作步骤。
(2)确定性:算法中的每一步都必须有确切的含义,不能产生二义性。
(3)可行性:算法中的每一个步骤都应该是能有效的执行,并得到确定的结果。
(4)输入:所谓输入,是指在算法执行时,从外界取得必要的数据。
(5)输出:一个算法有一个或多个输出,这是算法进行数据处理后的结果
3.算法设计的要求
①正确性:算法正确性是指算法达到了测试要求。
②可读性:指人对算法阅读理解的难易程度,可读性高的算法便于交流,有利于算法的调试和修改。
③健壮性:对于非法的输入数据,算法能给出相应的响应,而不是产生不可预料的后果。
④效率与低储存需求:效率指的是算法的执行时间。对于解决同一问题的多个算法,执行时间短的算法效率高。存储量需求指算法执行过程中所需要的最大存储空间。存储量需求越小的算法效率越高。
3.算法的时间和空间复杂度
①时间复杂度:是指执行算法所需要的计算工作量,可以用算法所执行的基本运算次数度量。
②空间复杂度:是指执行算法所需要的内存空间。包括算法程序、输入的初始数据以及算法执行过程中需要的额外空间。
③算法的时间复杂度和算法空间复杂度相互独立。
二、数据结构基本概念
1.数据:需要处理的数据元素的集合,一般来说,这些数据元素,具有某个共同的特征。
a.数据元素是数据的基本单位,即数据集合中的个体

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值