随笔分类 -  数据结构

摘要:2017-07-25 22:18:16 writer:pprp 定义:(来源于搜狗百科)并查集是一种树型的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题。常常在使用中以森林来表示。 作用:用来判断两个节点是否属于同一颗树; 操作:1,查找,Find 2,合并,Merg 阅读全文
posted @ 2017-07-25 22:49 pprp 阅读(274) 评论(0) 推荐(0)
摘要:2017-07-25 21:40:22 writer:pprp 在DFS的基础上加上了一个BFS函数 阅读全文
posted @ 2017-07-25 21:44 pprp 阅读(330) 评论(0) 推荐(0)
摘要:2017-07-25 15:38:00 writer:pprp 在前一篇图基于邻接列表表示法的代码加了一小部分,加了一个DFS函数,visited[N]数组 参考书目:张新华的《算法竞赛宝典》 代码如下: 阅读全文
posted @ 2017-07-25 15:41 pprp 阅读(264) 评论(0) 推荐(0)
摘要:writer:pprp 今天学的是邻接列表表示法 邻接列表表示法是用链表来记录各顶点的邻接顶点; 其节点结构为: 邻接顶点->下一邻接顶点->下一邻接顶点... 阅读全文
posted @ 2017-07-25 09:57 pprp 阅读(848) 评论(0) 推荐(0)
摘要:2017-07-25 09:05:06 writer:pprp 今天学的是图,邻接数组表示法。 邻接数组表示法是用一个n*n的数组表示一个具有n个顶点的图形。 数组的索引值表示顶点,以数组内容表示顶点议案的边是否存在边(1,代表有,0代表没有) 阅读全文
posted @ 2017-07-25 09:22 pprp 阅读(828) 评论(0) 推荐(0)
摘要:2017-07-24 22:04:08 writer:pprp 参考书目:张新华的《算法竞赛宝典》 思路跟小根堆一个样,主要的思路是先构造一个大根堆,然后在每次将最大的一个排除出来,再进行堆排序 代码如下: 我大部分都是按照书上写的来敲的,所以如果单纯让我写还是有一点困难,之后我得再写一遍。 阅读全文
posted @ 2017-07-24 22:11 pprp 阅读(444) 评论(0) 推荐(0)
摘要:2017-07-24 17:04:23 writer:pprp 参考书目:张新华的《算法竞赛宝典》 小根堆排序,使用数组模拟堆,时间复杂度为O(nlogn) 调整部分的程序比较难理解,有的地方还是不太清楚。 代码如下: 阅读全文
posted @ 2017-07-24 17:08 pprp 阅读(1367) 评论(0) 推荐(0)
摘要:writer:pprp 哈夫曼树是最优二叉树,带权值的二叉树 题意大概: 给n个数,经过计算得到最优二叉树的最小权值; 代码如下:(单个测试用例) 阅读全文
posted @ 2017-07-23 10:54 pprp 阅读(471) 评论(0) 推荐(0)
摘要:2017-07-23 09:09:19 writer:pprp 二叉查找树,删除的功能,分为三种情况, 代码如下: 阅读全文
posted @ 2017-07-23 09:20 pprp 阅读(172) 评论(0) 推荐(0)
摘要:2017-07-22 20:35:51 writer:pprp 在创建二叉树的基础上进行查找,由于二叉树的特点最快为O(logn),最慢为O(n)。 代码如下: 阅读全文
posted @ 2017-07-22 20:38 pprp 阅读(499) 评论(0) 推荐(0)
摘要:writer:pprp 思路很容易理解,但是实现还是有一点难度,容易错 参考书目:《算法竞赛宝典》 代码如下: 阅读全文
posted @ 2017-07-22 11:00 pprp 阅读(387) 评论(0) 推荐(0)
摘要:writer:pprp 二叉树,基础数据结构,通过一个数组,将其转化为一个二叉树; 完成的主要是:1,向树中插入一个新的节点; 2,创建一个新的树; 3,将其打印出来,三种方式遍历; 阅读全文
posted @ 2017-07-21 17:11 pprp 阅读(333) 评论(0) 推荐(0)
摘要:2017-07-21 14:59:35 writer:pprp 好久没有写链表了,有点怀念,之前写的链表比较全,但是大部分都是一步一步照着别人的代码写的,这次是第一次独立写链表; 功能不多,只有创建指定数量的链表和遍历输出链表; 代码如下: 阅读全文
posted @ 2017-07-21 15:03 pprp 阅读(217) 评论(0) 推荐(0)