题目描述 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 解题思路: 这个题目其实非常基础了,也就是直接使用BFS广度优先搜索算法对整棵二叉树进行遍历即可,我们最后返回的是一个数组 "[]",把遍历之后的元素放到这个数组当中即可。为了进行BFS,我们首先新建一个队列,将树根部的节点放到队列里 ...
分类:
编程语言 时间:
2020-09-04 17:24:39
阅读次数:
59
题目 The merchant 简化题意 给你一棵树,点有点权,到达一个点你可以花费该点的点权买入一个东西,然后在另一个点把这个东西卖出(卖出的时候手上必须有东西),只能买入卖出一次,问你从一个点 \(u\) 到一个点 \(v\) 的路径上能获得的最大收益。 思路 倍增。 除了正常倍增需要维护的东西 ...
分类:
其他好文 时间:
2020-08-29 15:18:55
阅读次数:
56
title: 数据结构 | 图-3 | 图的遍历 date: 2019-11-26 22:38:52 tags: 数据结构 BFS、DFS 深度优先遍历(DFS) 从图的某一顶点V0出发,访问此顶点;然后依次从V0的未被访问的邻接点出发,深度优先遍历图,直至图中所有和V0相通的顶点都被访问到; 若此 ...
分类:
其他好文 时间:
2020-08-17 17:23:45
阅读次数:
58
创建数据库一个演示表User CREATE TABLE `user` ( `id` int NOT NULL AUTO_INCREMENT, `name` varchar(64) DEFAULT NULL, `password` varchar(64) DEFAULT NULL, `status` ...
分类:
编程语言 时间:
2020-08-08 11:48:43
阅读次数:
106
$\mathcal Link. 给一个 \(n\times n\) 的棋盘,其中 \(q\) 个互不重叠的子矩阵被禁止放棋。问最多能放多少个互不能攻击的车。 \(n,q\le10^4\)。 $\mathcal 如果把问题转化成“只允许在某些子矩阵上放棋”,就是一个很显然的线段树优化建图最大流。源点连 ...
分类:
其他好文 时间:
2020-08-07 21:44:28
阅读次数:
73
注意建树范围开大一点。 x 先让其 +1 ,树状数组不能维护0 这个点。 int n; int c[32005]; struct Point { int x, y; Point(int _x = 0, int _y = 0) { x = _x; y = _y; } friend bool opera ...
分类:
编程语言 时间:
2020-08-07 12:36:18
阅读次数:
81
http://poj.org/problem?id=1469 网络流跑二分图模板题 #include<iostream> #include<cstdio> #include<queue> #include<algorithm> #include<cmath> #include<ctime> #inc ...
分类:
其他好文 时间:
2020-08-05 00:02:52
阅读次数:
67
数学使我们能够发现概念和联系这些概念的规律,这些概念和规律给了我们理解自然现象的钥匙。 ——爱因斯坦 前言 本文代码基于C++实现,阅读本文,需要有以下知识 教熟练使用C++ STL库中的vector,map,pair等; 对于递归和简单搜索算法(dfs,bfs)有粗浅的理解; 稍微的离散数学或者是 ...
分类:
其他好文 时间:
2020-08-04 14:04:46
阅读次数:
74
链接:http://poj.org/problem?id=3723 显然求最小生成树。但该图不一定是连通图,所以每处理一棵树还要找下一棵。为了方便,不妨让女孩的标号为0到n-1,而男孩的标号为n到m-1,这样便可放在统一数组记录。 代码(prim算法): 1 #include <iostream> ...
分类:
其他好文 时间:
2020-08-01 15:49:28
阅读次数:
103
Subway POJ - 2502 题意: 给定家与学校的坐标,以及若干条地铁路线各站点的坐标,还有人的速度与地铁的速度。一到达站点就可以立刻上车,不同地铁路线之间可以随意换乘。问从家到学校花费的最小时间。 思路: 懒鬼宗旨:能写floyd绝对不写dijkstra和SPFA…… 唯一要注意的是,本题 ...
分类:
其他好文 时间:
2020-08-01 09:18:51
阅读次数:
81