01-顺序表
一、数据结构与算法 数据结构与算法是一个程序员的基本功,技术日月更新,但数据结构和算法就相当于一个人的内功,这个人在编程的造诣高不高,就要看内功深厚不深厚。数据结构与算法是一个程序员的基本功,需要平时不断去积累。生活中许多都设涉及到数据结构与算法,数据库就是很典型的,只有认识到数据结构与算法,才能够从底层开发出轮子,让大家直接用轮子去造车子。 1、顺序表 将一组元素看成一个序列,元素在序列的位置和顺序。这样的一组序列元素的组织形式,我们可以抽象为 线性表 。 根据线性表的 实际存储方式 ,分为两种实现模型: 1、顺序表 :将元素顺序地存放在一块连续的存储区,元素间的顺序关系由它们的存储顺序自然表示。 2、链表 :将元素存放在通过连接构造起来的一系列存储快中。 2、顺序表的基本形式 内存: 由上图可知内存的基本单位是字节,而一字节占位8。内存存储的本质是存储二进制数据,如何让计算机分辨出存储的数据是各自的类型,int类型占4个字节,即上图的连续的4个内存单元。char类型占1个字节,即内存的一个单元。 图a表示顺序表的基本形式,数据元素是连续存储,每个元素所占的存储单元大小固定相同(同类型数据)元素的下标是逻辑地址,而元素的物理地址(实际内存地址,即在内存中的实际地址)可以通过存储区的起始地址L 0 加上逻辑下标与存储单元的大小