- 博客(6)
- 资源 (2)
- 收藏
- 关注
原创 红黑树源码实现
继上一篇《思考红黑树》 自己亲自动手把红黑树实现一遍,发现理论成功了要转换为实际代码还是有点难度的,困难点主要在于一些边界点的确定。还是需要进一步提高自己的C功力。直接贴代码吧,有需要的拿去用,我自己也留着以后拿来玩玩。这份代码肯定是需要根据实际环境进行修改的,前两天大概扫了一下 《Linux内核中的红黑树》里面的代码,发现自己写的代码水平跟大神写的还是有些差距啊...加油吧。
2013-08-24 12:22:50 1161
原创 思考红黑树
前言 网上讲红黑树的文章比较多,参考 维基百科--红黑树 《教你彻底理解红黑树》 等等。大概扫了扫,在讲红黑树的插入和删除操作的时候,主要集中精力在讲插入和删除的各种复杂情况,然后再画几个图出来,作者就以为讲得很清楚很牛逼了。其实我觉得,讲得非常烂,算法最重要的是它背后的思想,或者说它背后一些规律。前面提到的两篇文章都在讲“这个算法是什么”,但是“这个算法为什么是这样”压根就没
2013-08-22 21:00:53 2506
原创 计算两路径的相对路径
需求:给定绝对路径A和绝对路径B,计算B相对于A的路径,例如A=/srv/test/ , B=/srv/foo/bar ,则结果为 ../foo/bar 。思路:把A和B中具有相同的前面部分全部去掉,A中剩下的部分,有几个目录就替换为几个 ../ ,再把结果拼上 B的剩余部分就是结果。从PHP手册看到有人写的一个函数:<?php function relativePath($f
2013-08-06 13:09:51 975 1
原创 新浪mid与id互转
前言: 工作需要,顺带研究下,参考资料 新浪微博地址url字符与mid的相互转换算法及原理 由于原文代码看起来有点挫,所以决定把他代码拿过来改改,自己写一个。 新浪微博链接格式为:http://weibo.com/用户id/mid?其它参数,例如 http://weibo.com/1646512101/A3m18DfFN?mod=weibotime 而新浪的api
2013-08-05 19:17:25 1222
原创 反汇编之函数调用
首先提出2个问题:1.函数调用时,参数是怎样传递的?2.函数调用时,函数内部的局部变量和函数的参数在栈中是如何布局的?参考资料:1.AT&T与Intel汇编语言的比较2.C++反汇编代码分析–函数调用3.栈溢出4.常见寄存器名称及其作用目前得出的结论:1.从函数A中调用函数B之前,如果参数少的话(少于cpu一些可用的通用寄存器个数)则会把参数放到寄存器里
2013-08-01 21:26:00 2125
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人