题目地址:SPOJ 375
树链剖分第一发!
果然是个貌似很高级的数据结构,其实就是把树的边从树形结构转化成了线性结构,从而可以用线段树或树状数组之类的数据结构进行快速维护。从而将时间缩到n*log(2*n).
这题用的线段树维护的。
代码如下:#include
#include
#include
#i...
分类:
其他好文 时间:
2015-04-30 01:03:53
阅读次数:
162
原题地址LeetCode上也有这道题,直接扫一遍就行了,连数组都不用开,感觉像是蕴含了某种动归的思想在里面,要不怎么是个动归题呢代码: 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std;...
分类:
其他好文 时间:
2015-04-30 00:44:31
阅读次数:
228
两道题目意思差不多第一题是10进制,第二题是2进制的都是利用欧拉回路的fleury算法来解决因为我总是希望小的排在前面,所以我总是先将较小数加入栈,再利用另一个数组接收答案,但是这里再从栈中导出来答案要倒一下了,这一点要注意poj 1780 1 #include 2 #include 3 #in.....
分类:
其他好文 时间:
2015-04-30 00:42:46
阅读次数:
170
什么是链表,这种数据结构是由一组Node组成的,这群Node一起表示了一个序列。链表是最普通,最简单的数据结构,它是实现其他数据结构如stack, queue等的基础。
链表比起数组来,更易于插入,删除。
Node可以定义如下:
typedef int element_type;
typedef struct node *node_ptr;
struct node {
el...
分类:
其他好文 时间:
2015-04-29 23:27:55
阅读次数:
192
原文网址:http://blog.csdn.net/piaojun_pj/article/details/5903009 java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法,我们都知道,在socket传输中,发送、者接收的数据都是 byte数组,但是int类型是4个byte...
分类:
编程语言 时间:
2015-04-29 23:10:26
阅读次数:
182
题目要求:给字符数组,要求删除其中的某个字符,并将某个字符替换。假设将空格替换为%20,并且原数组大小足够大,只能在原数组操作。解题思路:删除操作:遍历数组,如果不是删除的字符,则依次写入数组,遇到要删除的字符,则跳过;复制/替换操作:复制是指将数组中某个字符复制n次,如b变成bb;是指将字符替换成...
分类:
其他好文 时间:
2015-04-29 23:05:13
阅读次数:
157
题目:假设有一个数组,里面有10个元素 int a[10]={0, 1, 2, 3, 4, 5, 6, 7, 8, 9}。请写一个算法,得到a数组的一个随机排列。要求时间复杂度尽量小,可以使用random函数。例如输出的随机序列可以是:3 6 2 4 5 1 9 8 0思路:1.将最大值max设置为...
分类:
其他好文 时间:
2015-04-29 23:03:28
阅读次数:
175
George is a cat, so he loves playing very much.Vitaly put n cards in a row in front of George. Each card has one integer written on it. All cards had distinct numbers written on them. Let’s number the...
分类:
编程语言 时间:
2015-04-29 21:54:23
阅读次数:
211
题目大意:给定一棵树和mm条路径,每条路径有一个权值,Q次询问,每次询问某条路经包含的所有路径中权值的第k小
原来精神污染那个题是这么做的啊QwQ
题解网上都有,我就直接贴代码了
没心情写题解了#include
#include
#include
#include
#define M 40400
using n...
分类:
其他好文 时间:
2015-04-29 21:53:34
阅读次数:
187