c++模板实现一个队列,包括查 插 删 改,求并集和交集,主要是想研究一下数据结构和算法,然后结合C++ template 实现一下,这个是第一个,这个分类里面的源代码没有追求尽善尽美,如果感觉有的借鉴就去去借鉴,如果感觉写的不好也别拍砖,谢谢……模板头文件如下 1 #ifndef SEQUEN.....
分类:
编程语言 时间:
2014-07-09 23:08:40
阅读次数:
273
基于《Linux设备驱动程序》书中的sbull程序以对Linux块设备驱动总结分析。
开始之前先来了解这个块设备中的核心数据结构:
struct sbull_dev {
int size; /* Device size in sectors */
u8 *data; ...
分类:
系统相关 时间:
2014-07-06 12:36:10
阅读次数:
250
??
定时器
服务器程序通常管理着众多定时事件,因此有效组织这些定时事件,使之能在预期的时间点被触发且不影响服务器的主要逻辑,对于服务器的性能有着至关重要的影响。位置我们要将每个定时事件封装成定时器,并使用某种容器类型的数据结构,比如链表、排序链表和时间轮将所有定时器串联起来,以实现对定时事件的统一管理。
Linux提供三种定时方法:
1.socket选项SO_RECVTI...
分类:
系统相关 时间:
2014-07-06 12:20:37
阅读次数:
371
题目:给你一个目标串,和一些模式串,问每个模式串是否在目标串中出现。
分析:字符串,AC自动机。一开始用KMP算法,TLE了才发现会超时,改用AC自动机;
直接利用AC自动机存储,查询即可,然后按顺序输出;
如果模式串中有重复的,直接利用并查集合并即可,朱旭判断父节点。
说明:╮(╯▽╰)╭计算复杂度时,数据组数被忽略了;注意初始化。
#i...
分类:
其他好文 时间:
2014-07-06 10:46:17
阅读次数:
224
并查集的应用。
实质上是判断这是否是一棵树。
需要注意的是0 0 也是一棵树。
#include
#include
#include
using namespace std;
int a[100001],n;
int vis[100001];
int fa(int x)
{
if(x!=a[x])
return a[x]=fa(a[x]);
}
int main(...
分类:
其他好文 时间:
2014-07-06 10:39:50
阅读次数:
164
首先来简单说下一些关于的基本概念。
树是一种非线性的数据结构
1,树是由 n(n>=0) 个结点组成的有限集合
如果n = 0 ,称为空树
如果n > 0,则:
有一个特定的称之为根(root)的结点,它只有直接后继,但没有直接前驱
除了根以外的其他结点划分为:m(m>=0)个互不相交的有限集合,T0,T1,T2…Tn-1,每个集合又是一棵树,并且称之为根的子树...
分类:
编程语言 时间:
2014-07-06 10:09:02
阅读次数:
234
在向系统申请堆空间的时候,虽然程序员不知道所申请的堆空间的数据结构,但是系统或者啥(微软可以知道)知道的,所以如果我们需要检查堆的使用异常,需要借助微软提供的机制来检堆的正常使用,从而发现在程序过程中出现的非法使用堆的情况,保证我们程序的高质量!这里面最重要的函数莫过于_CrtCheckMemory(),该函数使用简单,在需要测试堆异常的代码的开始和结束端分别调用即可。具体例子如下所示:#incl...
分类:
其他好文 时间:
2014-07-06 09:14:21
阅读次数:
164
最小生成树问题。
空间坐标系,还有点的半径。
如果两个点距离减去它们的半径小于0,表明他们重叠了。直接并查集合并。
剩下的就排序,并查。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define INF 0x7fffffff
#...
分类:
其他好文 时间:
2014-07-06 09:00:42
阅读次数:
172
简单模拟。按照题意处理一下字符串即可。
应该是写题号写错了,本来我在VirtualJudge是添加的POJ 并查集与生成树的题。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define INF 0...
分类:
其他好文 时间:
2014-07-06 08:24:00
阅读次数:
168
并查集问题。。。
这题以前做过……
以前做过……
做过……
过……
不过重做时候被吭得异常之爽……
在判断 vis[i]的时候。我记得标准C++是非0 即为真。
而我用C++ 提交的时候 if(vis[i]) 去直接给我WA了。
用G++ 就AC了。。。然后改成if(vis[i]==1) 交C++ 就AC了。
特瞄的我每次初始化都把 vis[i] 都赋值为 0...
分类:
其他好文 时间:
2014-07-06 00:19:08
阅读次数:
272