news 2026/4/30 10:22:32

数据结构的基本概念和算法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数据结构的基本概念和算法

一、数据结构的基本概念和算法

1. 数据结构的基本概念

1)数据

定义:

所有能输入到计算机中描述客观事物的符号,包括文本、声音、图像、符号等
示例: 微信发送的文字、声音、二维码都属于数据

特点:

必须能被计算机识别和处理

2)数据项

定义:

具有独立含义的数据最小单位,也称域

特点:

不可分割的最小单位
示例: 学生信息表中的学号、姓名、班级、成绩都是独立的数据项

3)数据元素

定义:

数据的基本单位,也称节点或记录
组成: 由若干个数据项构成
示例: 学生信息表中的一行记录(学号+姓名+班级+成绩)构成一个数据元素
区别: 数据项是最小单位,数据元素是基本单位

4)数据类型

定义:

数据的不可分割的基本单位

特点:

是数据类型的本质特征
记忆点: 数据类型与数据项的区别在于前者是不可分割的单位,后者是有独立含义的最小单位

5)逻辑结构和存储结构

逻辑结构

定义:

数据元素间抽象化的相互关系,与存储无关,独立于计算机

特点:

从具体问题中抽象出来的数学模型

分类:

集合:元素间无特定关系
线性结构:一对一关系(如顺序表、链表)
树形结构:一对多关系(如二叉树)
图形结构:多对多关系(如网状结构)

存储结构

定义:

数据元素及其关系在计算机中的存储方式

分类:

顺序存储:连续空间存储(如数组)
链式存储:通过指针连接(如链表)
散列存储:通过哈希函数定位
索引存储:建立索引表
常见组合: 顺序存储和链式存储是最常用的两种

2. 算法

1)概念

定义:

对特定问题求解步骤的描述
评价标准: 执行时间(时间复杂度)和占用空间(空间复杂度)

五个特性:

有穷性:有限步骤内完成
确定性:无歧义
可行性:可执行
输入:零个或多个输入
输出:至少一个输出

2)好算法的标准

正确性: 满足问题需求,结果准确
易读性: 命名规范,注释恰当
健壮性: 处理非法输入(如年龄为负值)
高效性: 执行时间短
低存储性: 占用空间少

3)时间复杂度

定义: 算法基本运算的执行次数作为度量标准
计算原则: 忽略低阶项和常数项

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 11:04:09

一文讲清楚DOM动态观察器MutationObserver的原理和使用场景

一文讲清楚DOM动态观察器MutationObserver的原理和使用场景 1. 引出 前端的童鞋都应该了然一件事,不管是借助框架像vue/react/angular,还是原生开发,就是我们开发来开发去,操作来操作去,其实本质都是在对页面上的HTML内容进行CURD 那既然我们是在对HTML进行CURD,那我们是…

作者头像 李华
网站建设 2026/4/23 12:15:24

云原生密钥管理:Sealed Secrets与Vault

在云原生环境中,密钥管理是保障系统安全的关键环节。密钥就像是一把打开系统资源的“钥匙”,如果管理不当,就会面临密钥泄露、管理失败等严重问题,从而威胁整个云原生系统的安全。而 Sealed Secrets 和 Vault 就是解决这些问题的有…

作者头像 李华
网站建设 2026/4/23 13:59:15

基于深度学习的电动车头盔佩戴检测系统

博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、php、爬虫、web开发,已经做了多年的设计程序开发,开发过上千套设计程序,没有什么华丽的语言,只有实…

作者头像 李华
网站建设 2026/4/23 13:30:22

AI应用架构师如何优化增量学习应用实践

AI应用架构师如何优化增量学习应用实践 一、引入与连接:当AI模型遇上“实时数据洪流” 凌晨3点,某电商AI应用架构师李明盯着监控大屏上的“推荐准确率”曲线——这条原本平稳的曲线,正随着凌晨促销活动的开启快速下滑。原因很简单&#xff1a…

作者头像 李华
网站建设 2026/4/27 12:01:44

Java毕设选题推荐:基于springboot+vue的校园学习互助系统基于springboot的课程互助学习系统【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/26 11:15:02

提示工程架构师必读:需求分析的3大黄金法则

提示工程架构师必读:需求分析的3大黄金法则 一、引入与连接:为什么需求分析是提示工程的“地基”? 一个让我印象深刻的痛点场景 去年,我帮一家教育机构做AI课件生成的提示工程。客户一开始说:“我们需要一个能生成数学课课件的提示。” 我按照常规思路写了提示:“生成…

作者头像 李华