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.会使结构所占存储空间变大

相关推荐
阿巴~阿巴~12 小时前
UDP网络编程:从客户端封装到服务端绑定的深度实践
linux·网络·socket网络编程·sendto函数·ip绑定·udp网络编程
硬核子牙12 小时前
ext4文件系统与jbd2
linux
Lynnxiaowen12 小时前
今天我们开始学习ansible之playbook的简单运用
linux·运维·学习·云计算·ansible
誰能久伴不乏13 小时前
Linux 进程通信与同步机制:共享内存、内存映射、文件锁与信号量的深度解析
linux·服务器·c++
xulihang13 小时前
如何在Windows上使用SANE扫描文档
linux·前端·javascript
点云SLAM13 小时前
算法与数据结构之二叉树(Binary Tree)
数据结构·算法·二叉树·深度优先·广度优先·宽度优先
讨厌下雨的天空13 小时前
进程基本概念
linux
小龙报13 小时前
《算法通关指南:算法基础篇 --- 一维前缀和 — 1. 【模板】一维前缀和,2.最大子段和》
c语言·数据结构·c++·算法·职场和发展·创业创新·visual studio
python百炼成钢14 小时前
13.RTC实时时钟
linux·stm32·单片机·嵌入式硬件·实时音视频
.柒宇.15 小时前
力扣hoT100之找到字符串中所有字母异位词(java版)
java·数据结构·算法·leetcode