数据结构介绍和线性数据结构(备忘)

本文深入探讨了数据结构的基本概念,包括数据与数据关系的集合,以及算法的定义和特性,如有穷性和确定性。文章详细介绍了算法的评价标准,如运行时间和占用空间,并讨论了线性表的不同类型,如顺序表、链表、栈和队列的实现原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据结构的定义

Data Structure:杂乱无序的数据不能表达和交流信息 因此数据必须有结构,(D,R)数据结构是数据和数据关系的集合(data,relationship)

 

算法定义

算法:算法是有限的指令集 ,遵循指令流可以完成特定的功能,算法基于数据结构

算法的特定  

1)有穷性

2)确定性

算法的评价标准

1)运行时间(Running time)

2)占用空间(Storage Space)

时间和空间是对立的关系

其他方面评价:正确性(Correctness) 可读性(Readability) 健壮性(Robustness):运行出Bug的次数

 

线性表

顺序表

顺序表:代表 数组

链表

单向链表

 

通过a1依次找到下面的元素

双向链表

循环链表

 

线性表-栈和队列

栈:可以把栈比作一个桶 

 

查看C# 源码(https://referencesource.microsoft.com/)发现 Stack使用Object数组来实现的 , 栈顶元素是数组的最后一个元素 

 

队列

查看C# 源码可以发现 队列也是用object[] 来实现的  实现代码已上传到我的下载中

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值