Linux编程 1/2 数据结构

数据结构:

程序 = 数据结构 + 算法

1.数据结构:

1.时间复杂度:

数据量的增长与程序运行时间增长所呈现的比例函数,则称为时间渐进复杂度函数简称时间复杂度

O(c) > O(logn)> O(n) > O(nlogn) > O(n^2) > O(n^3) > O(2^n)

2.空间复杂度:

2.类型:

1.逻辑结构

线性结构(一对一)

表

非线性结构(一对多、多对多)

树

图

2.存储结构

顺序存储

链式存储

散列存储

索引存储

3.数据结构:

顺序表

链式表(重点)

单向链表

双向链表

循环链表

内核链表

顺序栈

链式栈

顺序队列

链式队列

二叉树

排序查找算法

4.顺序表:

对数据增删改查

5.链式表:

链式存储的表状结构,链表可以分为:单向链表、双向链表、循环链表、内核链表

优点:

1.只要空间足够,理论上可以存放无限个数据

2.链表插入和删除效率高

缺点:

1.数据访问不太方便(空间不连续)

2.会使结构所占存储空间变大

相关推荐
写后端的胖头鱼6 小时前
一文详解B+树原理(附场景+示例)
数据结构·b树
阳光九叶草LXGZXJ7 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
奔跑的大白啊7 小时前
多容器共享目录权限踩坑记
linux·ubuntu·共享目录·linux权限·docker 容器化部署
All for pursuit.9 小时前
【位运算-1】338.比特位计数
数据结构·c++·算法·leetcode
Android系统攻城狮11 小时前
Linux Gstreamer深度解析之gst_audio_encoder_set_frame_max调用流程与实战(六十一)
android·linux·运维·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
H.莓飛11 小时前
【C++】命名空间、缺省参数、函数重载与引用
linux·开发语言·c++·visual studio
91刘仁德11 小时前
IP协议详解:从IP协议头到网段划分、路由与NAT
linux·服务器·网络·网络协议·tcp/ip
xxwl58511 小时前
数据结构知识点和代码实现总结(C语言实现)
c语言·开发语言·数据结构
硅基手札12 小时前
【Linux内核专栏 14】网络协议栈
linux·运维·网络协议
沫璃染墨14 小时前
《Linux工程实践篇(一):认识设计模式——从日志系统看策略模式》
linux·c++·安全·设计模式·策略模式