软考3
数据元素:数据的基本单位
数据项:构成数据元素的不可分割的最小单位
数据元素可以由n个数据项组成
数据结构:相互之间存在一种或多种特定关系的数据元素的集合
数据结构 三要素 :逻辑结构、物理结构(存储结构)、数据的运算
逻辑结构 :集合、线性结构、树形结构、图形结构(网状结构)
物理结构(存储结构)——
顺序结构 逻辑上相邻、物理上相邻
链式结构 逻辑上相邻,物理上可以相邻
索引存储 额外生成索引表
散列存储 有关键字、哈希存储
算法的五个特性:有穷性(有穷时间内可以完成)、确定性(同样输入只会有同样的输出)、可行性(可以通过基本运算执行有限次完成)、输入、输出
效率的度量:时间复杂度T(n),空间复杂度O(n)
空间复杂度 只关注存储空间大小与问题规模相关的变量
对递归来说,空间复杂度O(n) = 递归调用深度S(n)
O(1) < O(log2n)< O(n) < O(n) < O(log2n) < O(n2) < O(n3) < O(2n) < O(n!) < O(nn)
线性表L
逻辑结构
插入删除操作
存储结构(物理结构)
顺序表(顺序存储) 定长
链表(链式存储) 链块
双向、循环、静态
栈是只允许在一段进行插入或删除的线性表
队列的先进先出的线性表
循环队列 队空:head = tail
队满:head = ( tail + 1 ) % maxsize
空串:长度为0,不包含任何字符 空格串 子串 空串是任何串的子串
串相等:长度相同,对应位置的字符也相同 串比较:通过ASCII码比较
串操作
StrAssign(s,t) 将t赋值给s
Concat(s,t) 将t接在s后,形成新的串
StrLength(s) 返回s长度
StrCompare(s,t) 比较两个串的大小
SubString(start,end) 返回从start开始(包含start)到end结束(不包含end)之间的字串
串的模式匹配:字串的定位操作 字串又称为模式串
广义表是线性表的推广
LS = ( a , ( b , c ) , ( d, e ) )
长度3,深度2
head = a
tail = ( ( b , c ) , ( d, e ) )
笔记——
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通