02 2013 档案

hdu3535 分组背包的研究
摘要:AreYouBusyTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1833Accepted Submission(s): 701Problem DescriptionHappy New Term!As having become a junior, xiaoA recognizes that there is not much time for her to AC problems, because there are some other 阅读全文

posted @ 2013-02-28 18:11 电子幼体 阅读(157) 评论(0) 推荐(0)

WindowsAPI笔记(三)---绘制图形
摘要:首先介绍一下GDI(GraphicsDeviceInterface)。GDI,中文翻译为“图形设备接口”,是WindowsAPI中相当重要的一个成员,它掌管了所有显像设备的图像显示及输出功能。Windows系统现在的图形操作环境都是他的功劳。Ⅰ.坐标与DC在实际利用GDI绘图之前,我们先来了解一下几个屏幕绘图的基本概论。▲创建一个窗口之后,显示的屏幕上便划分出三个区域,即屏幕区(Screen),窗口区(Window)与内部窗口区(Client)▲DeviceContext(设备内容)一般简称为DC,就绘图观点来说,DC就是程序可以进行绘图的地方。▲在处理WM_PAINT消息以外的地方,若要取得 阅读全文

posted @ 2013-02-23 16:54 电子幼体 阅读(947) 评论(0) 推荐(0)

WindowsAPI笔记(二)---动手写第一个Windows程序
摘要:#include <windows.h> #include <iostream> #include <stdio.h> using namespace std; const string ProgramTitle = "Hello Windows"; LRESULT CALLBACK WinProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { string text = "Hello Windows!"; switch (message) { cas 阅读全文

posted @ 2013-02-12 23:26 电子幼体 阅读(314) 评论(0) 推荐(0)

WindowsAPI笔记(一)
摘要:句柄在Windows应用程序中,窗口是通过窗口句柄(HWND)来标识的。我们要对某个窗口进行操作,首先就要得到这个窗口的句柄。句柄(HANDLE)是Windows程序中一个重要的概念,使用也非常频繁。在Windows程序中,有各种各样的资源(窗口、图标、光标等),系统在创建这些资源时会为它们分配内存,并返回标识这些资源的标识号,即句柄。在后面的内容中我们还会看到图标句柄(HICON)、光标句柄(HCURSOR)和画刷句柄(HBRUSH)。消息在Windows程序中,消息是由MSG结构体来表示的。MSG结构体的定义如下(参见MSDN):typedef struct tagMSG { ... 阅读全文

posted @ 2013-02-12 21:43 电子幼体 阅读(413) 评论(0) 推荐(0)

⑨讲图论第五课: Bellman-Ford算法求最短路
摘要:贝尔曼-福特算法(Bellman-Ford)是由RichardBellman和Lester Ford创立的,求解单源最短路径问题的一种算法。有时候这种算法也被称为Moore-Bellman-Ford 算法,因为Edward F. Moore也为这个算法的发展做出了贡献。它的原理是对图进行V-1次松弛操作,得到所有可能的最短路径。其优于迪科斯彻算法的方面是边的权值可以为负数、实现简单,缺点是时间复杂度过高,高达O(VE)。但算法可以进行若干种优化,提高了效率。自然语言描述对有向图G(V,E),用贝尔曼-福特算法求以Vs为源点的最短路径的过程:建立dist[],表示目前已知源点到各个节点的最短距离 阅读全文

posted @ 2013-02-12 20:48 电子幼体 阅读(413) 评论(0) 推荐(0)

⑨讲图论第四课: Dijkstra算法求最短路
摘要:迪科斯彻算法(英语:Dijkstra's algorithm)是由荷兰计算机科学家艾兹赫尔·戴克斯特拉(Edsger Wybe Dijkstra)发明的。算法解决的是有向图中单个源点到其他顶点的最短路径问题。举例来说,如果图中的顶点表示城市,而边上的权重表示著城市间开车行经的距离,该算法可以用来找到两个城市之间的最短路径。算法描述该算法的输入包含了一个有权重的有向图 G,以及G中的一个来源顶点 S。我们以 V 表示 G 中所有顶点的集合。每一个图中的边,都是两个顶点所形成的有序元素对。(u, v) 表示从顶点 u 到 v 有路径相连。我们以 E 所有边的集合,而边的权重则由权 阅读全文

posted @ 2013-02-12 18:44 电子幼体 阅读(227) 评论(0) 推荐(0)

⑨讲图论第三课: 图的邻接表表示法
摘要:每个链表的上边附设一个表头结点,在表头结点中,除了设有链域first用于指向链表中第一个结点之外,还设有存储顶点vi名或其它有关信息的数据域data 。把同一个顶点发出的边链接在同一个边链表中,链表的每一个结点代表一条边,叫做表结点,结点中保存有与该边相关联的另一顶点的顶点下标 vertex 和指向同一链表中下一个表结点的指针 next。在有向图的邻接表中,第 i 个边链表链接的边都是顶点 i 发出的边。也叫做出边表。在有向图的逆邻接表中,第 i 个边链表链接的边都是进入顶点 i 的边。也叫做入边表。邻接表的类型定义#define nmax 100 /*假设顶点的最大数为100*/ ty... 阅读全文

posted @ 2013-02-12 17:11 电子幼体 阅读(392) 评论(0) 推荐(0)

⑨讲图论第二课: 图的邻接矩阵表示法
摘要:邻接矩阵是表示一个图的常用存储表示。它用两个数组分别存储数据元素(顶点)的信息和数据元素之间的关系(边或弧)的信息。将的顶点标为。若,,否则。无向图的邻接矩阵是对称的,有向图的邻接矩阵一般情况下是不对称的。在有向图中, 统计第 i 行 1 的个数可得顶点 i 的出度,统计第 j 列 1 的个数可得顶点 j 的入度。在无向图中, 统计第 i 行 (列) 1 的个数可得顶点i 的度网络的邻接矩阵若G是网络,则邻接矩阵可定义为:若i==j则a[i][j]=0;若i!=j&&则a[i][j]=W(i,j);否则a[i][j]=OO;邻接矩阵表示法中图的类型定义:#define MAXS 阅读全文

posted @ 2013-02-12 16:18 电子幼体 阅读(506) 评论(0) 推荐(0)

⑨讲图论第一课: 图的基本概念
摘要:图的定义:一个图G是由两个集合V和E组成,V是有限的非空顶点集,E是V上的顶点对所构成的边集,分别用V(G)和E(G)来表示图中的顶点集和边集。用二元组G=(V,E)来表示图G。有向图与无向图:若图G中的每条边都是有方向的,则称G为有向图。有向边也称为弧。若图G中的每条边都是没有方向的,则称G为无向图。完全图:对有n个顶点的图,若为无向图且边数为n(n-1)/2,则称其为无向完全图;若为有向图且边数为n(n-1) ,则称其为有向完全图。邻接顶点:若(vi,vj)是一条无向边,则称顶点vi和vj互为邻接点,或称vi和vj相邻接,并称边(vi,vj)关联于顶点vi和vj,或称(vi,vj)与顶点v 阅读全文

posted @ 2013-02-12 15:52 电子幼体 阅读(287) 评论(0) 推荐(0)

网络流初步
摘要:一、网络流的定义有向图 G = ( V, E )中:•有唯一的一个源点S(入度为0:出发点)•有唯一的一个汇点 T(出度为0:结束点) •图中每条弧 (u, v) 都有一非负容量 c ( u, v )满足上述条件的图G称为网络流图。记为: G = ( V, E ,C)1、可行流◆每条弧 ( u, v )上 给定一个实数f(u,v),满足:有 0 <= f ( u, v ) <= c( u, v ),则f(u,v)称为弧( u, v )上的流量。◆如果有一组流量满足条件: 源点s : 流出量 = 整个网络的流量 汇点t : 流入量 =整个网络的流量 中间点:总流入量 = 总流出量 那 阅读全文

posted @ 2013-02-04 22:19 电子幼体 阅读(273) 评论(0) 推荐(0)

poj 3026 Borg Maze
摘要:Borg MazeTime Limit:1000MSMemory Limit:65536KTotal Submissions:6176Accepted:2087DescriptionThe Borg is an immensely powerful race of enhanced humanoids from the delta quadrant of the galaxy. The Borg collective is the term used to describe the group consciousness of the Borg civilization. Each Borg 阅读全文

posted @ 2013-02-02 22:57 电子幼体 阅读(129) 评论(0) 推荐(0)

标准C++中的string类的用法总结
摘要:要想使用标准C++中string类,必须要包含#include <string>// 注意是<string>,不是<string.h>,带.h的是C语言中的头文件using std::string;using std::wstring;或using namespace std;下面你就可以使用string/wstring了,它们两分别对应着char和wchar_t。string和wstring的用法是一样的,以下只用string作介绍:string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,ch 阅读全文

posted @ 2013-02-01 11:12 电子幼体 阅读(113) 评论(0) 推荐(0)

prim算法
摘要:普里姆算法(Prim算法),图论中的一种算法,可在加权连通图里搜索最小生成树。意即由此算法搜索到的边子集所构成的树中,不但包括了连通图里的所有顶点,且其所有边的权值之和亦为最小。该算法于1930年由捷克数学家沃伊捷赫·亚尔尼克发现;并在1957年由美国计算机科学家罗伯特·普里姆独立发现;1959年,艾兹格·迪科斯彻再次发现了该算法。因此,在某些场合,普里姆算法又被称为DJP算法、亚尔尼克算法或普里姆-亚尔尼克算法。从单一顶点开始,普里姆算法按照以下步骤逐步扩大树中所含顶点的数目,直到遍及连通图的所有顶点。输入:一个加权连通图,其中顶点集合为V,边集合为E;初始化: 阅读全文

posted @ 2013-02-01 11:07 电子幼体 阅读(251) 评论(0) 推荐(0)

导航