随笔分类 -  数据结构

搭建高可用mongodb集群(一)——mongodb配置主从模式
摘要:转载自:LANCEYAN.COM 在大数据的时代,传统的关系型数据库要能更高的服务必须要解决高并发读写、海量数据高效存储、高可扩展性和高可用性这些难题。不过就是因为这些问题Nosql诞生了。 NOSQL有这些优势: 大数据量,可以通过廉价服务器存储大量的数据,轻松摆脱传统mysql单表存储量级限制。 阅读全文

posted @ 2016-12-03 14:52 yujon 阅读(31396) 评论(0) 推荐(2)

哈希表的基本操作
摘要:散列(hash)表/哈希表 1.关键字和和存储的地址建立一个对应的关系:Add = Hash(key); 2. 解决冲突方法: (1)开放定址法 – 探测方式:线性探测、二次探测。 (2)再哈希法 (3)分离链接法 – 利用链表的方式。 (4)公共溢出区法 3.存储结构:用顺序存储来构建哈希表。构建 阅读全文

posted @ 2016-05-07 01:13 yujon 阅读(596) 评论(0) 推荐(0)

顺序循环队列的基本操作
摘要:#include #include #define OK 1 #define ERROR 0 typedef int Status; // Status是函数的类型,其值是函数结果状态代码,如OK等 typedef int QElemType; #define MAXQSIZE 100 // 最大队 阅读全文

posted @ 2016-05-07 01:12 yujon 阅读(1243) 评论(0) 推荐(0)

栈的基本操作
摘要:#include #include #include #define OK 1 #define ERROR 0 #define STACK_INIT_SIZE 100 #define STACKINCREMENT 10 typedef int SElemType; typedef int Statu 阅读全文

posted @ 2016-05-07 01:11 yujon 阅读(345) 评论(0) 推荐(0)

二叉平衡排序树的基本操作
摘要://定义数据类型 #define MAXSIZE = 100; #define OK 1; #define ERROR 0; typedef int status; typedef int ElemType; //平衡二叉排序树的结构 typedef struct Tnode { ElemType 阅读全文

posted @ 2016-05-07 01:10 yujon 阅读(345) 评论(0) 推荐(0)

图的遍历
摘要:图的遍历和树的遍历类似,希望从图中某一顶点出发访遍图中其余顶点,且使每一个顶点仅被访问一次,这一过程就叫图的遍历。 对于图的遍历来说,如何避免因回路陷入死循环,就需要科学地设计遍历方案,通过有两种遍历次序方案:深度优先遍历和广度优先遍历。 1. 深度优先遍历 深度优先遍历,也有称为深度优先搜索,简称 阅读全文

posted @ 2016-05-07 01:09 yujon 阅读(1013) 评论(0) 推荐(0)

图的简介与创建
摘要:一、基本术语 图:由有穷、非空点集和边集合组成,简写成G(V,E); Vertex:图中的顶点; 无向图:图中每条边都没有方向; 有向图:图中每条边都有方向; 无向边:边是没有方向的,写为(a,b) 有向边:边是有方向的,写为 有向边也成为弧;开始顶点称为弧尾,结束顶点称为弧头; 简单图:不存在指向 阅读全文

posted @ 2016-05-07 01:08 yujon 阅读(2382) 评论(0) 推荐(1)

哈弗曼树的构建,哈夫曼编码、译码
摘要:哈夫曼树的基本概念 哈夫曼树(Huffman Tree),又叫最优二叉树,指的是对于一组具有确定权值的叶子结点的具有最小带权路径长度的二叉树。 (1)路劲(Path):从树中的一个结点到另一个结点之间的分支构成两个结点间的路径。 (2)路径长度(Path Length):路径上的分支树。 (3)树的 阅读全文

posted @ 2016-05-07 00:58 yujon 阅读(11476) 评论(0) 推荐(0)

二叉排序树的基本操作
摘要://节点 typedef struct bsnode{ int data; struct bstree *lchild; struct bstree *rchild; }bsnode,*bstree; 创建二叉排序树: 1创建二叉树: void createbstree(bstree &bt){ / 阅读全文

posted @ 2016-05-07 00:57 yujon 阅读(802) 评论(0) 推荐(0)

线索二叉树的基本操作
摘要://定义数据类型 typedef enum{Link, Thread} PointerTag; //link = 0表示指向左右孩子指针,Thread = 1表示指向前驱或后继的线索 typedef struct BitNode { char data; //结点数据 struct BitNode 阅读全文

posted @ 2016-05-07 00:56 yujon 阅读(1942) 评论(0) 推荐(0)

二叉树的基本操作
摘要:一、定义数据类型: //二叉树节点 typedef struct BiTNode { char data; struct BiTNode * lchild,*rchild; } BiTNode,*BiTree; //栈节点 typedef struct Stack { BiTNode a[NUM]; 阅读全文

posted @ 2016-05-07 00:53 yujon 阅读(1240) 评论(0) 推荐(0)

树的基本操作
摘要:一、关于树: 数的定义是递归的: 定义树是满足以下条件的,包含至少一个结点的有限集合: (1)树中有一个特别指定的结点,称为根,或树根。 (2)其它结点划分成n>=0个不相交的集合T1…Tn ,每个集合又还是一棵树,但称为根的子树。 树的主要操作包括:求树的深度、求给定节点的子节点、兄弟节点、遍历树 阅读全文

posted @ 2016-05-07 00:52 yujon 阅读(3560) 评论(0) 推荐(1)

导航