数据结构 关于数据结构:数据结构之栈和队列 栈和队列栈也是一种线性构造相比数组,栈对应的操作是数组的子集只能从一端增加元素,也只能从一端取出元素这一端称为栈顶栈是一种后进先出的数据结构(LIFO)举一个例子,咱们平时敲代码都常常撤销,而撤销操作的原理就是靠栈来实现的。比方咱们先打出 “沉迷”、”学习”、”不法”,这个时候咱们发现打错了无奈两个字,而这…
数据结构 关于数据结构:数据结构之数组 数组什么是数组?数组就是把数据码成一排进行寄存须要留神的是数组的索引是从0开始应用Java中的数组 {代码…} 封装属于咱们的数组数组最大的长处:疾速查问。 scores[2]数组最好利用于”索引有语意”的状况。然而并非所有有语意的索引都实用于数组例如:身份证号,如果想用身份证号来当索引的话,咱们要开拓一个很大的空…
数据结构 关于数据结构:数据结构之栈 栈是一个先入后出(FILO-FirstInLastOut)的有序列表。 栈是限度线性表中元素的插入和删除只能在线性表的同一端进行的一种非凡线性表。容许插入和删除的一端,为变动的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。依据栈的定义可知,最先放入栈中元素在栈底,最初放入的元素在栈顶,而删除元素刚好相同,…
数据结构 数据结构之链表 1.链表是以节点的形式来存储,是链式存储2.每个节点蕴含 data 域,next 域:指向下一个节点3.链表的各个节点不肯定是间断存储4.链表分带头节点的链表和没有头节点的链表,依据理论的需要来确定
数据结构 数据结构之队列 思路:front=-1 指向队列头的前一个地位rear=-1 指向队列尾的数据(即就是队列最初一个数据)判断队列是否满:front ==rear 判断队列是否空:rear == maxSize-1
数据结构 红黑树插入与删除算法的原理及实现 在最坏状况下二叉查找树的性能非常蹩脚,咱们迫切需要一种可能所有操作都能在对数工夫内实现的数据结构。接下来咱们就来介绍一下一种十分罕用的动静保护的均衡二叉树——红黑树。
数据结构 树形结构效率对比 二叉查找树 (Binary Search Tree) 概念 二叉查找树又称二叉搜索树,二叉排序树,特点如下: 左子树上所有结点值均小于根结点 右子树上所有结点值均大于根结点 结点的左右子树本身又是一颗二叉查找树 二叉查找树中序遍历得到结果是递增排序的结点序列。 BST 的操作代价分析: 查找代价: 任何一个数据的查找过程都需要从根…
数据结构 Red-Black-Tree-红黑树 R-B Tree,全称Red-Black Tree,又称为红黑树,它一种特殊的二叉查找树。红黑树的每个节点上都有存储位表示节点的颜色,可以是红(Red)或黑(Black)。红黑树的特性:
数据结构 BTree-BTree B树中所有结点中孩子结点个数的最大值成为B树的阶,通常用m表示,从查找效率考虑,一般要求m>=3。一棵m阶B树或者是一棵空树,或者是满足以下条件的m叉树。 1)每个结点最多有m个分支(子树);而最少分支数要看是否为根结点,如果是根结点且不是叶子结点,则至少要有两个分支,非根非叶结点至少有ceil(m/2)个分支,这…
数据结构 数据结构第二章线性表1线性表 线性表 线性表的基本概念 线性表的定义 线性表是具有相同数据类型的n(n>=0)个元素的有限序列。 线性表的基本操作 什么时候要传入参数的引用“&”? 一种是值类型,使用时会直接复制原值,修改参数不会影响原值 一种是引用类型,使用时操作的是原值,修改时直接修改原值!(C语言不支持这种引用类型!) 为什么要实…