实用数据结构
文章平均质量分 63
互联网大喇叭
公众号「互联网大喇叭」,欢迎关注
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
实用数据结构---最小生成树(prim实现)
题目描述 Description 农民约翰被选为他们镇的镇长!他其中一个竞选承诺就是在镇上建立起互联网,并连接到所有的农场。当然,他需要你的帮助。 约翰已经给他的农场安排了一条高速的网络线路,他想把这条线路共享给其他农场。为了使花费最少,他想铺设最短的光纤去连接所有的农场。 你将得到一份各农场之间连接费用的列表,你必须找出能连接所有农场并所用光纤最短的方案。 每两个农场间的距离不会超过100原创 2015-03-08 11:55:28 · 892 阅读 · 0 评论 -
实用数据结构---树状数组(二叉索引树)
树状数组适用于动态连续和查询问题,就是给定一个区间, 查询某一段的和或者修改某一位置的值。 关于树状数组的结构请去百度百科,否则将看不懂下面内容 我们看这个题 士兵杀敌(二) 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述 南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的。 小工是南将军手下的军师,南将军经常想知道第m号到第n号士兵原创 2015-03-01 22:51:24 · 1725 阅读 · 0 评论 -
实用数据结构---线段树(超详细讲解)
转载自http://blog.youkuaiyun.com/metalseed/article/details/8039326 一:线段树基本概念 1:概述 线段树,类似区间树,是一个完全二叉树,它在各个节点保存一条线段(数组中的一段子数组),主要用于高效解决连续区间的动态查询问题,由于二叉结构的特性,它基本能保持每个操作的复杂度为O(lgN)! 性质:父亲的区间是[a,b],(c=(a+b)/2)左转载 2015-03-09 22:22:52 · 4176 阅读 · 1 评论 -
关押罪犯---并查集操作
题目描述 Description S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N。他们之间的关系自然也极 不和谐。很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突。我们用“怨 气值”(一个正整数值)来表示某两名罪犯之间的仇恨程度,怨气值越大,则这两名罪犯之 间的积怨越多。如果两名怨气值为c 的罪犯被关押在同一监狱,他们俩之间会发生摩擦,并 造成影响力为c 的冲原创 2015-03-09 18:43:09 · 806 阅读 · 0 评论 -
实用数据结构---图的操作和算法
图算法的源代码、包含大量的注释,和最小生成树、最短路径、邻接表图深度广度优先搜索,邻接矩阵图深度广度优先搜索,欢迎借鉴 #include #include #define MAXVEX 20 #define INFINITY 65535 typedef char vertexType; typedef int edgeType; typedef int Boolean; typedef int原创 2015-03-12 21:39:00 · 940 阅读 · 0 评论 -
实用数据结构---并查集
题目描述 Description 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。 规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。 输入描述 Input Description 第一行:三个整数n,m,p,(n原创 2015-03-09 12:58:22 · 698 阅读 · 0 评论
分享