会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Yancey
追求卓越,成功便会不期而至
博客园
首页
新随笔
联系
订阅
管理
2014年8月30日
MapReduce中ArrayWritable 使用方法
摘要: 在编写MapReduce程序时,Map和Reduce之间传递的数据需要是ArrayList类型的,在调试运行时遇到了这样的一个错误:java.lang.RuntimeException: java.lang.NoSuchMethodException: org.apache.hadoop.io.Ar...
阅读全文
posted @ 2014-08-30 16:07 Yancey咖啡
阅读(2951)
评论(1)
推荐(0)
2014年8月3日
Python动态加载模块
摘要: 需求:实现一个简单的pyton程序,接收两个参数:plugin_name, data,根据不同的plugin_name定位到不同的逻辑处理模块并进行输出。实现方案:使用python的库函数:load_source,将插件模块加载到一个dict中key为模块名称,value为类的实例,核心代码:def...
阅读全文
posted @ 2014-08-03 22:53 Yancey咖啡
阅读(1597)
评论(0)
推荐(0)
Redis实现原理(2)--字典
摘要: 1、 Dict2.1 数据结构定义dict.h// 哈希表结构typedef struct dictht { dictEntry **table; //哈希表数组指针 unsigned long size; //哈希表大小 unsigned long sizemask; //掩码...
阅读全文
posted @ 2014-08-03 14:11 Yancey咖啡
阅读(1047)
评论(0)
推荐(1)
Redis实现原理(1)--链表
摘要: 链表是Redis中使用非常广泛的一种数据结构,很多地方如List结构底层就是用链表实现的。链表的定义在头文件adlist.h 中,很常见的双向链表,结构如下: 1 // 链表节点 2 typedef struct listNode { 3 struct listNode *prev; //指...
阅读全文
posted @ 2014-08-03 01:30 Yancey咖啡
阅读(435)
评论(0)
推荐(0)
2013年11月8日
算法导论--第十四章【数据结构的扩张】14.1
摘要: 主要介绍以下几个部分:1)在一颗红黑树上求第i小数是多少需要在节点结构种增加一个域size,用来保存该节点中有几个内节点(包括当前节点)OS-SELECT(root[T], i) r = size[left[x]] + 1 //左子树节点树+1,用于判断在左子树找还是右子 //树,或者就是当前节点 if r == i return x ...
阅读全文
posted @ 2013-11-08 00:47 Yancey咖啡
阅读(1576)
评论(0)
推荐(0)
2013年11月5日
算法导论--第13章【红黑树】
摘要: 特点:1) 每个节点的颜色或是红,或是黑2)根节点是黑色3)叶节点是黑色4)如果一个节点是红色,则叶子为黑5)对每个节点,从该节点红黑树插入流程:第一步: 和BST的插入过程相似,将待插入节点z插入到一个红黑树的叶子节点,并着红色因为第一步之后可能会违反红黑树的某些性质,所以要进行下一步第二步: 第二步只有当插入节点的父节点为红色时才会执行,因为这个时候才会违反性质4)颜色调整分为六种情况,根据插入节点的父节点是祖父节点的左子树还是右子树分为2种,其中每种情况又有以下三种情况:情况a:插入节点的父节点是红色节点并且插入节点的叔叔节点(祖父节点的另外一个子节点)也是红色。情况b:插入节点是父..
阅读全文
posted @ 2013-11-05 00:25 Yancey咖啡
阅读(841)
评论(0)
推荐(0)
2013年11月3日
大数加法
摘要: #include#include#includeusing namespace std;char * add(char *a, char*b) { int la = strlen(a); int lb = strlen(b); char result[la+lb+2]; int p_r = 0; memset(result, 0, sizeof(result)); int crease = 0; while (la-- && lb--) { int tmp = int(a[la] - '0' + b[lb] - '0') + crease; re
阅读全文
posted @ 2013-11-03 00:51 Yancey咖啡
阅读(331)
评论(0)
推荐(0)
2013年11月2日
算法导论--第12章【二叉查找树】
摘要: 12.1-2 BST:node.left.key right; } return pre; 12.2-5 如果curr节点有左子女,那么它的前驱一定是左子女中最右边的节点,否则就不是前驱节点个人博客:http://www.yancey.info/?p=125
阅读全文
posted @ 2013-11-02 13:55 Yancey咖啡
阅读(177)
评论(0)
推荐(0)
2013年10月27日
算法导论习题--第六章[堆排序]
摘要: 6.1-1 堆中高度的定义为root到叶子节点最长简单下降路径上边的数目 2^h lg(n) lg(n)取下整6.1-3 反证6.1-4 叶子节点6.1-5 是6.1-6 否6.1-7 未知6.2.1 略6.2.2 略6.2.3 直接返回,不做修改6.2.4 不做修改6.2.5 void max_heapify(A,i) { while (true) { int l = i*2; int r = i*2 + 1; largest = ...
阅读全文
posted @ 2013-10-27 20:14 Yancey咖啡
阅读(295)
评论(0)
推荐(0)
2013年10月25日
strcpy实现 处理地址重叠,返回值问题
摘要: strcpy的主要功能就是将原串拷贝到目标,一个比较简单的实现版本为 void strcpy(char * dest, char * src) { assert(src!=NULL); assert(dest!=NULL); char *ret = dest while((*ret) = (*src) && (*src)!=‘\0’) { src++; ret++; } }比较常用的实现是以上那个版本,那么这个函数其实是由很多问题的,我们进行第问题1、将src++和dest++写在while循环的条件式里...
阅读全文
posted @ 2013-10-25 23:00 Yancey咖啡
阅读(1101)
评论(2)
推荐(0)
下一页
公告