
数据结构
一头小猪猪
这个作者很懒,什么都没留下…
展开
-
了解数据结构
程序=数据结构+算法 基本概念 数据:描述客观事物的符号,是计算机中可以操作的对象,能被计算机识别,并输入给计算机处理的符号集合 数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,也被称为记录 数据项:一个数据元素可以由若干个数据项组成。数据项是数据不可分割的最小单位 struct Class{ int id; char name[20]; char ...原创 2020-02-04 11:40:06 · 145 阅读 · 0 评论 -
初识数据结构
数据结构 1.数据之间的关系(存在一种或多种的特定关系) 2.数据的存储 可分为逻辑结构(集合/线性/树形/图形结构)和物理结构(顺序存储和链式存储结构) 线性表 n(n>=0)个数据元素组成的一个有限序列,可以在其任意位置 上进行插入和删除操作的线性数据结构 线性表中数据与数据存在一对一的关系,除第一个元素和最后一个元素外,每个元素都有唯一的直接前驱和唯一的直接后继...原创 2019-07-14 09:22:07 · 164 阅读 · 0 评论 -
栈与队列
栈 一种特殊的线性表,只允许在固定的一端进行插入和删除元素操作。(后进先出) 顺序栈 顺序栈和顺序表数据成员相同,但是顺序栈的入栈和出栈操作只允许对当前栈顶进行操作。 顺序栈所有的操作,时间复杂度为O(1) 注意:面试中如果需要用到栈,封装静态栈 链式栈 队列 只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表 (先进先出) 顺序队列 假溢出...原创 2019-07-15 12:31:17 · 123 阅读 · 0 评论 -
数据结构---算法的效率
算法效率 分为两种:第一种是时间效率,第二种是空间效率。 时间效率被称为时间复杂度,而空间效率被称作空间复杂度。 时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间。 时间复杂度 在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。一个算法所花费的时间与其中语句的执行次数成正比例,算法中的基本操作的执行次数,为算法的时间复杂度。 ...原创 2019-07-15 19:01:03 · 527 阅读 · 0 评论 -
二叉树详解
树 概念: 树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。 特点:每个结点有零个或多个子结点;没有父结点的结点称为根结点;每一个非根结点有且只有一个父结点;除了根结点外,每个子结点可以分为多个不相交的子树 。 节点的度:一个节点含有的子树的个数称为该节点的度;如上...原创 2019-07-16 14:26:01 · 326 阅读 · 0 评论 -
常见排序算法
排序的概念及其运用 排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。 稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次 序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排 序算法是稳定的;否则称为不稳定的。 内部...原创 2019-07-16 17:39:50 · 255 阅读 · 0 评论