
数据结构
文章平均质量分 75
郑祖煌
这个作者很懒,什么都没留下…
展开
-
哈夫曼编码的设计与实现
#include "stdafx.h"#include #include #include #include const static int nBufferSize = 1024;char g_szBuffer[ nBufferSize] = "ABCEFHDILASJBNDBBBBSAAUILDK" ;int g_nMaxNum =原创 2013-10-11 09:53:59 · 1586 阅读 · 0 评论 -
redis设计思想
分类: NOSQL不同于nginx的精雕细琢,redis代码的风格趋向于简洁实用。简洁启事,下面所述不再列举任何源码,不拼凑任何外来资料。去除末枝,下面直入redis主题,尽可能简洁地描述redis的设计思想。 整体模型:单进程单线程事件驱动模式。Redis在主处理流程中,采用了单进程接受各种client请求并返回结果,整体处理流程采用事件驱动的方式原创 2014-10-30 17:56:46 · 658 阅读 · 0 评论 -
想成为一个游戏程序员要有以下资料
下面文章转自,自学编程网http://www.zxbc.cn/一、书籍:算法与数据结构:《数据结构(C语言版)》——严蔚敏、吴伟民清华出版社我觉得其配套习题集甚至比原书更有价值,每个较难的题都值得做一下。 《Introduction to Algorithms》第二版中文名《算法导论》关于算法的标准学习教材与工程参考手册,在去年优快云网站上原创 2014-11-15 12:31:13 · 1899 阅读 · 0 评论 -
在多台服务器上简单实现Redis的数据主从复制
Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构。下面我演示下怎样在多台服务器上进行Redis数据主从复制。这里我假设有两台服务器,一台是Windows操作系统(局域网IP:192.168.3.82),一台是Linux操作系统(局域网IP:192.168.3.90),在两个操作系统都安装re原创 2014-10-30 17:49:47 · 1546 阅读 · 0 评论 -
Redis源码解析(1)——源码目录介绍
概念 redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样原创 2014-10-30 17:51:19 · 648 阅读 · 0 评论 -
AOE 关键路径求解
// 求解关键路径// 效率极低 最好使用 矩阵 或者十字链表// 若采用十字链表和矩阵可以大幅度的提高效率#include "stdafx.h"#include #include #include #include enum{ Vertex_No_Connection = -1, Ve原创 2013-12-20 14:23:39 · 876 阅读 · 0 评论 -
任意两点间距离 Floyed 算法
//// 求图任意两点的最短距离#include "stdafx.h"#include #include #include #include enum{ Vertex_No_Connection = -1, Vertex_Total_Number = 5, Vertex_Max_Edge_V原创 2013-12-20 14:09:14 · 741 阅读 · 0 评论 -
Krusal算法 方法2
// krusal 算法根据 MST 性质。若点集合U ~点集合 V 存在一点最短路径s~t, 则最小生成树必包含 s~t 这条路。// 利用反证法(或者剪贴法)可以证明// krusal 算法是将整个图每个顶点看成一个集合。主要是合并集合,直到只剩一个集合为止// 同时考虑以边为对象的 有向图// 用最小边去找集合#include原创 2013-12-20 14:07:40 · 802 阅读 · 0 评论 -
树的转化 多叉树和二叉树之间的互转
// 此代码为 多叉树转化为 二叉树并且二叉树转化为多叉树的代码#include "stdafx.h"#include #include // 树的结点分布信息struct SCreateNormalTree{ int nData ; int nPrev ; // -1 为跟结点};const stati原创 2013-12-20 14:05:12 · 1446 阅读 · 0 评论 -
树的相互转换 多叉树转化为二叉树
// 此代码为 多叉树转化为 二叉树并且二叉树转化为多叉树的代码#include "stdafx.h"#include #include // 树的结点分布信息struct SCreateNormalTree{ int nData ; int nPrev ; // -1 为跟结点};const stati原创 2013-12-20 14:03:49 · 2112 阅读 · 0 评论 -
Dijstra 路由选择算法
#include "stdafx.h"#include #include // -1 表示无路径可以到达const static int _VERTEX_NUM = 5;int arrayPathScheme[ _VERTEX_NUM][_VERTEX_NUM ] ={ 0, 10, -1, 30, 100, -1,原创 2013-12-20 14:01:55 · 687 阅读 · 0 评论 -
Prim算法的实现
// Prim 算法 根据MST 性质。若点集合 U ~点集合V 存在一点最短路径 s~t, 则最小生成树必包含 s~t 这条路。// 利用反证法(或者剪贴法)可以证明// Prim 算法 是将整个图看成了两个集合,一个 U,一个不在U 里面的。// 有向图#include "stdafx.h"#include #include const原创 2013-12-20 14:00:43 · 657 阅读 · 0 评论 -
三元表的高效转置
#include "stdafx.h"#include const static int _MATRIX_NUM_ = 6;const static int _ROW_NUM_ = 5;enum { MAXTRIX_ROW = 0, MAXTRIX_COL = 1, MAXTRIX_VAL = 2, };int _tmain(原创 2013-12-20 13:48:12 · 613 阅读 · 0 评论 -
二叉树的多种遍历方式
#ifndef __TREE_H__#define __TREE_H__#include enum { DirLeft = 0, DirRight = 1, };struct node{ int nNodeData ; node* pLeftNode ; node* pRightNode ;原创 2013-12-20 15:22:50 · 539 阅读 · 0 评论 -
Krusal算法 方法一
// krusal 算法根据 MST 性质。若点集合U ~点集合 V 存在一点最短路径s~t, 则最小生成树必包含 s~t 这条路。// 利用反证法(或者剪贴法)可以证明// krusal 算法是将整个图每个顶点看成一个集合。主要是合并集合,直到只剩一个集合为止// 这里主要以集合为考虑对象 有向图// 用集合去找最小边#include "原创 2013-12-20 14:06:21 · 1428 阅读 · 0 评论 -
VS2008下安装和使用BOOST库boost-1_54
下载boost库(最好去官网下,一般有SGI(GCC+用的较多)和BOOST之分,VS下用BOOST)下载boost_1_54_0压缩文件,解压缩到d:\boost_1_54_0\(可以任何位置,你觉得合适就可以)目录下1.编译bjam从开始->程序->Microsoft Visual Studio 2008->Visual Studio Tools->Visual Studi原创 2014-11-05 18:00:04 · 774 阅读 · 0 评论