随笔分类 - 数据结构
程序员怎么能不懂数据结构呢
摘要:1 队列的概念和操作 1.1 队列的基本特征 队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。它是一种先进先出(First In First Out)的线性表,简称FIFO。允许插入的一端称为队尾,允许删除的一端称为队头 1.2 队列的基本操作 插入操作 ,在表尾插入元
阅读全文
摘要:1 栈的概念和操作 1.1 栈的基本特征 栈限定只在表尾进行插入和删除的操作,也就是传统意义上的”先进后出“,所以栈也是线性表的一种 1.2 栈的基本操作 插入操作 即入栈 删除操作 即出栈 2 栈的基本实现 栈属于线性表中的一种,那么就有顺序表和链表两种实现方式,但是不管哪种,都需要下面几个方法
阅读全文
摘要:什么是线性表? 零个或者多个数据元素的有限序列。线性表中的元素在位置上是有序的,前后两个元素存在一一对应关系 线性表的存储结构 顺序表 用一块地址连续的存储空间一次存储线性表中的数据元素,在顺序表中,逻辑上相邻的元素在物理地址上也是相邻的 顺序表之数组 数组是最基础的也是存取速度最快的一种集合类型,
阅读全文
摘要:随着输入规模n的增大,T(n)增长最慢的算法是最优算法 计算方法 用常数1去带运行时间中的所有假发常数 在修改后的运行次数函数中,只保留最高阶项 如果最高阶存在且不是1,则去除与这个项相乘的常数 最后得到的结果就是大O阶
阅读全文
摘要:什么是数据结构? 程序设计 = 数据结构 + 算法 数据结构就是关系,数据元素相互之间存在的一种或多种特定关系的集合 数据结构分为 逻辑结构和物理结构 逻辑结构 :是指数据对象中数据元素之间的相互关系 物理结构:是指数据的逻辑结构在计算机中的存储形式 四种逻辑结构 集合结构: 集合结构中的数据元素除
阅读全文
摘要:线性表是由n(n>=0)个相同的数据元素构成的有限序列 线性表分为 顺序表:在内存中用一块地址连续的空间依次存放线性表的元素 最常见的就是数组 顺序表的存、读数据不管在哪个位置,时间复杂度都是O(1),而在插入和删除元素的时候,时间复杂度都是O(n) 所以线性表比较适合元素个数稳定,高读取、低增删的
阅读全文