数据结构:
栈:
B、B+树:
- 随机存取和随机查找的区别:
随机存取是指访问存储设备中的数据,而随机查找是指在数据集合中查找特定数据项。
B,B+树支持随机查找。
- 顺序查找和随机查找的区别:
顺序查找是无论什么情况都是顺序的
随机查找是依次查找数据项,与给定初始值有关
散列表:
- 装填因子:a=n/m n为个数 m为表长
- 散列表的冲突和装填因子无关
- 散列表的查找成功的平均查找长度与装填因子(装填因子越小,查找效率越高)、散列函数、冲突解决策略有关,与表长无关
同义词是指散列表中具有相同散列地址的两个元素
堆积:同义词和非同义词冲突
排序:
- 选择排序、归并和初始状态无关,快速排序初始状态越有序越复杂
- 快速排序查看快慢通过划分是否为中间来看,序列每次操作后都会改变,后面的划分需要看变话后的序列
- 一趟:对所有元素进行一次处理,快排中要从整体看
- 对于一个序列有k1,k2,优先级高的后排并且要用稳定的算法来保证前面的排序
- 堆排序包括建堆O(n)(对于每一层都有可能下坠每层有2的n-1次方个结点)建堆是从n/2向下取整开始排序、取堆顶、重排O(logn)(下坠)
- 堆排序在建好堆后:
1.插入:放在最后一个结点后进行排序,由于只影响一个树和高度有关logn
2.删除:删除后向下调整,也只影响一侧树,和高度有关logn
- 堆排序在建堆和删除的时候才用考虑比较兄弟结点大小
内部排序总结:
归并、快排是用递归实现的
代码长度:归并>插入排序
实现简单: 简单选择 直接插入 冒泡排序
(选择排序)(插入排序)(交换排序)
比较次数和趟数都与初始状态无关:简单选择
趟数:简单选择,直接插入,基数
分治思想:归并,快排
对于内部排序大量数据处理:希尔
外部:归并
空间复杂度: 快排平均O(log2n),最坏O(n)
2路归并O(n)
其余O(1)
稳定:直接、折半插入,冒泡、归并、基数
不稳定:简单选择(30,30*,1,2)、快速、希尔、堆排序
每趟处理确定一个位置的最终位置:快速、选择、冒泡、堆排序
需要用到随机存取特性的排序:堆排序(2i,2i+1)希尔(d)
外部排序:
- 带权路径长度等于各个叶节点到根节点的总和
- 最佳归并树:nk=(n0-1)/(k-1) k-u-1个虚段
- 外部排序过程中输入输出缓冲区作用:
- 暂存输入输出记录
- 内部归并的工作区
- 产生初始归并段的工作区
m路实现输入/内部归并/输出 | ||
不需要并行处理: 需要m个输入 1个输出 | ||
需要 | 2m | 2 |
内部归并独立于两者 |
- 求前缀,中缀,后缀,先转化成二叉树
前缀是二叉树的中序遍历
后缀是二叉树的后序遍历
- 表达式求值中栈底必须比其他元素优先级小严格小
- 循环队列不会产生假溢出
计算机组成原理:
计算机系统的概述
1.CPU的构造:
2.系统总线:
3.数据驱动方式:
根据指令来准备数据 根据数据来进行操作 |
4.
5.冯诺依曼机是以存储程序为核心的,存储程序一旦被启动不需要操作人员的干预
6.控制器
7.计算机多层存储结构
8.硬件能直接执行的只能是机器语言(二进制编码)
9.源文件可以直接通过编译程序变成机器级目标代码文件
也可以先变成汇编语言再变成机器级目标代码文件
数据的表示和运算
1.在计算机中用无符号数来表示主存地址
2.异或
3.定点数:
原码高位低位补零
反码:正数同原码
负数高位低位补1
4.进位原理
移位运算 |
|
乘除:
< 标签:归并,堆排序,汇总,CF,重难点,查找,排序,移位,408 From: https://blog.csdn.net/m0_57692904/article/details/136560870