408复习笔记——数据结构(一):绪论

408考研笔记系列(一)(PS:本人复习使用的是王道四本书和王道课程)


前言

之前写过机器学习后,因为上网课和毕业设计的原因就没有时间更新了,但是那次博客的体验让我感觉非常好;现在因为二战的原因,需要重新学408,希望可以通过写博客的方式对408的复习进行总结,也方便我之后的复习,如果有大佬可以指出我的错误或者帮助到和我一样备战408的朋友,我将不胜荣幸。


一、简介

绪论的内容比较简单,主要分为两个小节,第一小节介绍了什么是数据结构,以及数据结构的三要素;第二小节介绍了算法和算法的评价:时间复杂度和空间复杂度,算法效率的度量也是该小节的重点内容。

二、主要内容

2.1 数据结构及其三要素

数据结构可以用抽象数据类型(ADT)来定义,即抽象数据组织及与之相关的操作,简而言之,就是我们在写图书馆管理系统时候如何用代码来表示那么多学生,我们常用的便是数组,以及我们对这么多学生所作的操作。

数据结构又主要包括三要素:逻辑结构、存储结构和数据的运算。用图书馆管理系统来说,逻辑结构就是我们表示学生时用的数组;物理结构就是计算机如何存储这些数组,可以用顺序存储的方式,也可以用链式存储的方式;运算指的便是我们对这些学生做的操作,包括增加一个学生或者删除一个学生。这三要素缺一不可。

逻辑结构分为线性结构和非线性结构,线性结构包括线性表、栈和队列等;非线性结构包括树和图;

物理结构可以分为顺序存储、链式存储、索引存储和散列存储;

逻辑结构只采用抽象表达方式,独立于存储结构;线性表可以用顺序存储方式实现,也可以用链式存储的方式实现。

2.2 算法及算法评价

算法指的是问题求解步骤的描述,算法包含五个特性:有穷性、确定性、可行性、输入和输出;但是拥有这五个特性的并不一定是算法;好的算法又包括正确性、可读性、健壮性以及满足效率和低存储量需求。

算法的评价主要是时间复杂度和空间复杂度;

时间复杂度指的是最坏情况下估算算法执行时间的一个上界,一般只挑循环中的一个基本操作作分析,并只考虑阶数高的部分;常见时间复杂度排序:
在这里插入图片描述

空间复杂度定义为该算法所耗费的存储空间。算法原地工作指的是算法所需内存空间为常量。


三、常见题及易错题型

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
答案见下一篇文章

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值