数据结构
文章平均质量分 51
长弓Smile
这个作者很懒,什么都没留下…
展开
-
数据结构(1)--基本概念
数据结构(1)–基本概念 1.数据:数据是信息的载体,是描述客观事物属性的数、字符以及所有能够输入到计算机并被程序识别和处理的符号集合。 2.数据元素:数据元素是数据的基本单位,通常作为一个整体进行考虑和处理。一个数据元素由若干个数据项组成,数据项是构成数据元素的不可分割的最小单位。 3.数据对象:数据对象是具有相同性质的数据元素的集合,是数据的一个子集。原创 2017-09-17 09:51:01 · 314 阅读 · 0 评论 -
BST树、红黑树(1-基本概念)
BST树、红黑树 BST树(二叉排序树,二叉搜索树) 定义: (1) 若左子树非空,那么左子树上所有节点关键字均小于根节点的关键字值 (2) 若右子树非空,则右子树上的所有节点关键字均大于根节点的关键字值 (3) 左、右子树本身也是一颗二叉排序树 红黑树: 红黑树是一棵二叉搜索树,它在每个节点上增加了一个存储为来表示结点的颜色,可以是红色或者黑色。通过对任何一条从根到叶子结点的简...原创 2018-04-04 11:28:29 · 808 阅读 · 0 评论 -
散列表
直接寻址表 假设某个动态集合中的每个元素取自于U={0,1,2,…,m-1},这里的m不是一个很大的数,假设没有两个元素具有相同的关键字。我们用一个数组(直接寻址表),记为T[0…m-1],其中的每个位置成为槽,对应全局区域中的一个关键字,如T[k]指向集合中关键字为k的元素,如果不存在k元素,则记为T[k]=null。 优点:在U很小的情况下,插入、查找、删除的时间复杂度均为O(1)。 缺...原创 2018-04-02 09:56:30 · 235 阅读 · 0 评论 -
二叉树的建立与遍历
二叉树的前序遍历,中序遍历,后序遍历还有层次遍历原创 2017-10-11 20:52:23 · 513 阅读 · 1 评论 -
栈的应用
中缀表达式转换未后缀表达式:思路: 1.从左至右扫描中缀表达式 2.遇到数字时,则加入后缀表达式 3.遇到运算符时: a) 若为‘(’, 直接入栈; b)若为‘)’,则依次将栈中的运算符加入到后缀表达式,直到出现‘(’,然后从栈中删除‘(’; c)若为出除括号以外的运算符,则1)当其优先级高于除‘(’以外的栈顶元素时,直接入栈,否则2)从栈顶元素开始,依次弹出比当前处理的运算符优先级高或原创 2017-10-09 21:14:13 · 371 阅读 · 0 评论 -
队列
1.定义 队头(Front):允许删除的一端,又称为队首。 队尾(Rear):允许插入的一段。 空队列:不含任何元素的空表。原创 2017-09-30 11:21:39 · 293 阅读 · 0 评论 -
栈
n个元素进栈,共有多少种出栈方式?原创 2017-09-30 11:04:57 · 185 阅读 · 0 评论 -
数据结构(2.1)-线性表的顺序表示
顺序表使用一组地址连续的存储单元,依次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素在物理位置上也相邻。线性表中元素的位序是从1开始的。特点: 1. 具有随机访问的特性,即通过首地址和元素序号可以在O(1)时间内找到指定元素。 2. 元素存储密度高,每个节点只存储数据元素。 3. 逻辑上相邻的元素物理上也相邻,因此,插入和删除操作需要移动大量元素。原创 2017-09-21 17:00:38 · 375 阅读 · 0 评论 -
数据结构(2)--计算时间复杂度
数据结构(2)–计算时间复杂度 循环主体中的变量参与循环条件的判断 找出主体语句中与循环次数T(n)成正比的循环变量,将之带入条件进行计算。 循环主体中的变量与循环条件无关 采用数学归纳法或直接累计循环次数,多层循环可从内到外分析。忽略但不语句,条件判断语句,只关注主体语句的执行次数。此类问题又分为地柜程序和非递归程序。原创 2017-09-17 10:49:35 · 412 阅读 · 0 评论 -
AVL树、B树、B+树(1-基本概念)
AVL树(平衡二叉树) 定义: (1) 左子树与右子树的高度差只能是-1,0,1。 (2) 树中的每个左子树和右子树都是AVL树 B树(多路平衡查找树): B树中所有结点的孩子结点数的最大值称为B树的阶,通常用m表示。一棵m阶B树或者空树,或为满足如下特征的m叉树: (1) 树中每个结点至多有m棵子树(即至多含有m-1个关键字) (2) 若根结点不是终端结点,则至少有两棵子树 (3...原创 2018-04-04 11:33:33 · 2506 阅读 · 0 评论