2013年2月12日

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 电子幼体 阅读(300) 评论(0) 推荐(0) 编辑

WindowsAPI笔记(一)

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

posted @ 2013-02-12 21:43 电子幼体 阅读(396) 评论(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 电子幼体 阅读(396) 评论(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 电子幼体 阅读(211) 评论(0) 推荐(0) 编辑

⑨讲图论第三课: 图的邻接表表示法

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

posted @ 2013-02-12 17:11 电子幼体 阅读(342) 评论(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 电子幼体 阅读(483) 评论(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 电子幼体 阅读(265) 评论(0) 推荐(0) 编辑

导航