2018年1月6日

etcd v3 服务注册与发现 Go代码

摘要: 本文整理一下思路,编写示例(golang),以便加深etcd的理解 大致如下,监听程序为master,服务为service 1 service 启动时向etcd注册自己的信息,即注册到services/ 这个目录 2 service 可能异常推出,需要维护一个TTL(V3 使用 lease实现),类 阅读全文

posted @ 2018-01-06 21:31 Seven++ 阅读(8462) 评论(0) 推荐(0) 编辑

2015年5月23日

[UNIX环境高级编程](第三版)中apue.h的问题

摘要: 编译gcc -gmyls.c 时,报错 ‘找不到头文件 apue.h’apue.h是作者自己写的一个文件,系统不自带。其中包含了常用的头文件,以及出错处理函数的定义。需要到 http://www.apuebook.com/code3e.html(这本书的官网) 下载 ‘src.3e.tar.gz’进... 阅读全文

posted @ 2015-05-23 04:40 Seven++ 阅读(3712) 评论(0) 推荐(1) 编辑

2014年5月17日

红黑树

摘要: 性质导致了强约束,也导致了O(lgn)的高度性质1. 节点是红色或黑色。性质2. 根是黑色。性质3. 所有叶子都是黑色(叶子是NIL节点)。性质4. 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)性质5. 从任一节点(不包括该节点)到其每个叶子的所有简单路径... 阅读全文

posted @ 2014-05-17 03:25 Seven++ 阅读(293) 评论(0) 推荐(0) 编辑

2014年5月9日

二叉查找树

摘要: 详细相关性质 可查看维基百科"二叉查找树"关键性质:1 设root为二叉查找树的结点 如果a是root的任意左结点 key[a] #include using namespace std; /*二叉查找树*/ /*实现中假设关键元素互不相同*/ typedef int DataT... 阅读全文

posted @ 2014-05-09 23:05 Seven++ 阅读(216) 评论(0) 推荐(0) 编辑

2014年4月24日

散列表

摘要: 散列表的思想就是把关键值送给一个散列函数,产生出一个散列值,这个值平均分布在一个整数区域中=>散列表的实现的细节1 当数组足够大时可以直接寻址不需要散列函数,常数操作时间O(1) 但数据规模远大于散列表大小时,考虑到空间的局限性,需要散列函数使关键值均匀的分开2 散列表的装载因子,也就是实际决定散列... 阅读全文

posted @ 2014-04-24 02:26 Seven++ 阅读(287) 评论(0) 推荐(0) 编辑

2014年4月18日

普通树(有根树)C++

摘要: 对于普通树实现的细节包括1 树结点的结构体2 初始化及删除树结点(关注内存泄露)3 递归先序遍历4 通过关键值的查询操作,返回关键值的结点5 凹入表实现6 广义表实现7 非递归先序遍历,利用栈作为辅助的数据结构 1 #include 2 #include 3 #include 4 #i... 阅读全文

posted @ 2014-04-18 01:49 Seven++ 阅读(3077) 评论(0) 推荐(0) 编辑

2014年4月16日

栈与队列实现

摘要: 围绕两点,加深对栈与队列的理解1 如何用两个栈实现一个队列2 如何用两个队列实现一个栈栈与队列 C++ 简易实现 1 typedef int DataType; 2 //简易栈 3 class stack 4 { 5 private: 6 enum {size=10}; 7 ... 阅读全文

posted @ 2014-04-16 01:34 Seven++ 阅读(185) 评论(0) 推荐(0) 编辑

2014年4月15日

10.2-7 单链表的就地逆置

摘要: 1 使用固定量的存储空间2 主要思想是头插法,重复执行 “第二个元素插入到第一个元素之前,迭代第二个元素” 1 #include 2 #include 3 #include 4 using namespace std; 5 6 typedef int DataType; 7 /... 阅读全文

posted @ 2014-04-15 00:05 Seven++ 阅读(247) 评论(0) 推荐(0) 编辑

2014年4月13日

寻找最大值最小值

摘要: 主要的做法是,成对的比较元素,而不是将每一个元素与当前的最小值或最大值进行比较#include using namespace std; //同时找出最大值最小值void MaxAndMin(int array[], int size, int &max, int &min){ if (siz... 阅读全文

posted @ 2014-04-13 12:49 Seven++ 阅读(215) 评论(0) 推荐(0) 编辑

2014年4月7日

选择问题(选出第i个最小元素)

摘要: 通过分治法解决的分析(还有其他方法解决选择问题如使用 堆)1 同快速排序一样,对输入的数组进行递归分解 不同的是:快速排序会递归处理分解的两边,而选择问题只处理需要的一边2 选择问题的期望时间代价为Θ (n) (平均性能)3 选择问题一般思路 a. 随机选取一个key b. 进行区域划分,比key小的在左边,比key大的在右边 c. key的下标与 i(第i个最小元素的下标)比较,分别处理3种情况 相等: 即为需要选择的元素 ikey: 说明第i个最小元素在划分区域的右边,进行递归分解右边的区域,[注意需要考虑 此时第i个元素在区域右边为第i-k(key的下标... 阅读全文

posted @ 2014-04-07 23:57 Seven++ 阅读(296) 评论(0) 推荐(0) 编辑

导航