1 数据结构
数据在计算机的存储方式,数据结构可理解为:数据+结构。数据是描述客观事物的符号,为程序操作存储在计算机上,结构包括数据的逻辑结构和存储结构。逻辑结构有4种基本类型(即集合结构、线性结构、树形结构、图形结构),表和树是常用的两种高效数据结构,许多高效算法都采用这种结构设计。逻辑结构决定元素的输入、存储、发送、处理和信息传递等基本操作。
2 链表与数组的区别
数组元素的个数是固定的,而链表结点的个数可按需增减
数组元素的内存空间在数据定义时分配,且是连续的,链表结点的内存空间是在执行时动态向系统申请的
数组中元素顺序关系由元素在数组中位置(即下标)确定,链表中结点的顺序关系由结点所包含的指针来体现
数组元素的内存空间是连续的,所以随机访问的速度非常快,但插入与删除数据时需移动许多数据,效率较低,而链表结点之间通过所包含的指针来体现,插入和删时只改变上下指针之间的指向即可(改变相关结点的后继结点指针,与结点的实际存储位置无关),效率较高,但随机访问速度比数组慢
3 排序算法
冒泡排序:比较相邻元素,如果顺序错误就交换位置,重复这个过程指到排序完成
插入排序:将待排序的元素逐个插入到已经排序好的序列中的适当位置
选择排序:从未排序的序列中选择最小(或最大)的元素,将其放到已排序序列的末尾
快速排序:选择一个基准元素,将序列分为2部分,一部分比基准小