数据结构与算法分析
文章平均质量分 75
一只小胖纸
这个作者很懒,什么都没留下…
展开
-
【数据结构与算法分析】01:表、栈和队列
写在前面:该类文章作为笔者的读书笔记,仅供参考。数组:动态指定,但需要对于大小的最大值进行估计(估计过大浪费空间);插入删除平 均需要移动表一半的元素,最坏情况为O(N)线性查找的话,时间复杂度为O(N)二分查找的话时间为O(longN)无序数组插入的时间复杂度为O(1)有序数组插入的时间复杂度为O(N)删除操作的时间复杂度均为O(N)链表:不连续存储(避免插入删除的线性开销),每个结构均包含表...原创 2018-03-07 11:22:48 · 145 阅读 · 0 评论 -
【数据结构与算法分析】05:优先队列(堆)
目录 优先队列(堆) 1简单的想法 1.1二叉堆 1.1.1结构性质 1.1.2堆序性质 1.2堆操作 1.2.1基本操作 2.d-堆 优先队列(堆) 优先队列是一种特殊的队列,是允许至少下列两种操作的数据结构:Insert(插入)以及DeleteMin(删除最小者)。DeleteMin操作要求,优先队列要有办法能够找出最小者,在优先队列的实现中,如何做到花费最优...原创 2018-03-14 10:20:26 · 274 阅读 · 2 评论 -
【数据结构与算法分析】04:散列
散列 之前写好的都发表了,不知道为啥被覆盖了,心痛到无法呼吸o(╥﹏╥)o,这里就不写什么基本的散列函数、散列函数的选择啊,散列过程图了,以后有时间有心情再补吧,直接贴个实现代码好了……. public class SeparateChainingHashTable <T>{ private static final int DEFAULT_TABLE_SIZE = ...原创 2018-03-15 12:29:34 · 189 阅读 · 0 评论 -
【数据结构与算法分析】02:树(1)
前言:对于大量的输入数据,链表的线性访问时间太慢,不易使用,提出一种新的数据结构概念——树,下文涉及的数据结构叫做二叉查找树(binary search tree)预备知识:一棵树是一些节点的集合,该集合可以是空集,若非空,则一棵树由称作根(root)的节点r以及0个或多个非空的子树T1,T2,...,Tk组成,每一个子树的根都被来自根r的一条有向的边(edge)所连接。二叉树:(binary t...原创 2018-03-08 22:03:46 · 182 阅读 · 0 评论 -
【数据结构与算法分析】03:树(2)
伸展树 对于m次连续搜索操作有很好的效率,保证从空树开始任意M次对树的操作最多花费O(MlogN)的时间。 伸展树会在一次搜索后,对树进行一些特殊的操作。只要一个节点被访问过,那么就用AVL树的旋转方法把这个节点移动到根节点。 具体来说,分为以下情况: 如果访问节点X的父节点是树根,那么我们只要X和树根;这就是沿着访问路径上的最后的选择; X有父亲(P)和祖父(G),存在两种情况以及对称...原创 2018-03-09 19:44:37 · 167 阅读 · 0 评论 -
【数据结构与算法分析】06:插入排序与归并排序
插入排序 基本思想 伪代码 算法分析 归并排序 基本思想 算法流程 算法分析 插入排序 基本思想 插入排序是最基本的排序方式,下面给一个基本思想: 插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据。 伪代码 Insertion-Sort(A,n) //数组A有n个元素,对A进行排序 for j...原创 2018-04-13 14:53:22 · 285 阅读 · 1 评论 -
【数据结构与算法分析】07:堆排序
1.堆 2.保持堆的性质 2.1算法 2.2算法分析 3.建堆 3.1算法 3.2算法分析 4.堆排序算法 4.1算法 4.2算法分析 1.堆 (二叉)堆数据结构是一种数组对象,可以被视为一颗完全二叉树。表示堆的数组A是一个具有两个属性的对象:length[A]是数组中元素个数,heap-size[A]是存放在A中的堆的元素个数,heap-size[A]<=...原创 2018-05-30 13:09:45 · 245 阅读 · 0 评论 -
【数据结构与算法分析】08:红黑树(java实现)
简介 红黑树是一种二叉查找树,在每个结点上增加一个存储位表示结点颜色,可以是RED或者是BLACK,通过对任何一条从根到叶的路径上各个结点着色方式的限制,确保红黑树不会有一条路径会比其他路径长出两倍 性质: 每个结点或是红的,或是黑的; 根结点是黑色的; 每个叶结点(NIL)是黑的; 如果一个结点是红色,则他的两个儿子都是黑色; 对每个结点,从该结点到其子孙结点的所有路径上包含相同数据的黑结...原创 2018-09-27 17:41:42 · 128 阅读 · 0 评论