我都不好意思在标题上写这是最短路
这题挺有意思,关键在于把题目所求的量转换为最短路问题。
题意:
给一个无向图,每个结点有权值p[i],每条边有权值w[i]
求使这颗树所有顶点与根节点1联通的最小花费,
最小花费=∑w[i]×∑p[i]
第一个∑是所有边,第二个∑是该边下所有结点的权值和
思路:
通过推导可以发现,对于每个结点,它被算入的花费为 p[i]*d[i],...
分类:
其他好文 时间:
2014-07-10 20:18:43
阅读次数:
177
第3节 堆排序把n个元素建立一个堆,首先将这n个结点以自顶向下、从左到右的方式从1到n编码,这样可以把n个结点转换成一颗完全二叉树紧接着从最后一个非叶子结点(结点编号为n/2)开始到根节点(结点编号为1),逐个扫描所有结点,根据需要将当前结点向下调整,直到以当前结点为根结点的子树符合堆的特性。#in...
分类:
其他好文 时间:
2014-06-27 18:35:05
阅读次数:
120
1、序详细实现了二叉查找树的各种操作:插入结点、构造二叉树、删除结点、查找、 查找最大值、查找最小值、查找指定结点的前驱和后继2、二叉查找树简介它或者是一棵空树;或者是具有下列性质的二叉树: (1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值; (2)若右子树不空,则右子树上所有结点的值...
分类:
其他好文 时间:
2014-06-25 20:44:28
阅读次数:
294
二叉查找树(Binary Search Tree),也称有序二叉树(ordered binary tree),排序二叉树(sorted binary tree),是指一棵空树或者具有下列性质的二叉树:若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值;任意节点的右子树不空,则右子树上...
分类:
其他好文 时间:
2014-06-24 12:21:17
阅读次数:
257
POJ1258
思路:首先把第一个结点加入树中,每次往树中加入一个结点,加入的结点必须是与当前树中的结点距离最小那个点,这样每次把结点加入树中选取的都是最小权值,循环n-1次后把所有结点都加入树中。
#include
#include
#include
using namespace std;
const int MAXN = 1e9;
//创建map二维数组储存图表,low数组记录每2个点...
分类:
其他好文 时间:
2014-06-19 09:54:24
阅读次数:
255
定义 避免把一个请求的发送者和接收者耦合在一起,使多个对象都有机会处理请求。将这个请求的多个接收着连接成一条链,并让请求沿着这个链传递下去,只到有一个结点能处理请求。 职责链模式中,链形成后,不一定非要有一个结点能够处理请求,也就是说,所有结点都可以处理一下再往下传,也可以都不处理,这样说来就比.....
分类:
其他好文 时间:
2014-06-17 12:53:06
阅读次数:
319
二叉查找树(Binary Search Tree),也称二叉排序树(binary sorted tree),是指一棵空树或者具有下列性质的二叉树:若任意节点的左子树不空,则左子树上所有结点的值均小于它的根结点的值任意节点的右子树不空,则右子树上所有结点的值均大于它的根结点的值任意节点的左、右子树也分...
分类:
其他好文 时间:
2014-06-16 23:32:04
阅读次数:
199
二叉查换树,左孩子小于等于根,右孩子大于根。完全二叉树,叶子都在最后一层,所有结点(除了叶子)都有两个孩子。平衡二叉树,左右子树的高度在一定范围内。4.1
Implement a function to check if a binary tree is balanced. For the purp...
分类:
其他好文 时间:
2014-06-12 08:09:04
阅读次数:
167
1.二叉树的结点计算1)在二叉树的第i层上至多有2i-1个结点
提示:可以用归纳法,假若第i层有至多2i-1个结点,那么第i+1层至多就有2*2i-1个结点。2)深度为k的二叉树至多有2^k -1个结点。
提示:考虑满二叉树的情况,所有结点求和。3)有n个结点的完全二叉树的高度为 提示:结合2),n...
分类:
其他好文 时间:
2014-06-05 14:28:24
阅读次数:
274