
学习备忘
文章平均质量分 59
fanshengchong
这个作者很懒,什么都没留下…
展开
-
Python 学习之二: module, import 与 import as
1, module 的实质python 中的module 本质上就是一个相对独立的python文件. 当需要重用某些功能时, 将此功能所在的模块import到需要的模块即可.2, import 的实质import的过程实际上包括两个主要部分, 1) 类似于shell 的 "source" 命令, 具体说即相当于将被import的module(即python原创 2011-12-04 18:32:07 · 4368 阅读 · 3 评论 -
算法学习笔记2--斐波那契堆
1,操作时间复杂度2,基本结构说明:1)由多个最小堆组成2)每个最小堆的根节点构成一个双向链表,称为根链表3)每个最小堆内同级的节点构成一个双链表。4)每个非根节点保存父节点指针和任意一个孩子节点指针。5)min 指向根链表key值最小的节点,即堆的最小节点。2,基本操作1)add/insert 节点:直接插入根链表,并更新m原创 2013-02-12 20:46:37 · 274 阅读 · 0 评论 -
算法学习--待学习
1, 楼天成:男人八题2,计算机界的Bible ( 业内人士一般简称TAOCP).3,插头DP原创 2013-02-14 21:01:04 · 110 阅读 · 0 评论 -
算法学习笔记--常见问题
1,求第K大数 (http://www.cnblogs.com/zhjp11/archive/2010/02/26/1674227.html)解法1: 我们可以对这个乱序数组按照从大到小先行排序,然后取出前k大,总的时间复杂度为O(n*logn + k)。解法2: 利用选择排序或交互排序,K次选择后即可得到第k大的数。总的时间复杂度为O(n*k)解法3: 利用快速排序的思想,从数组S中转载 2013-02-16 22:53:59 · 312 阅读 · 0 评论 -
xcode 编译器选择
总结:llvm是一个后端的编译工具,其输入是前端的编译工具生成的IR语言。执行优化以及代码生成。clong是一个生成IR的前端编译工具,其特点是速度比较快gcc也可用来生成IR语言转自:http://www.cnblogs.com/ydhliphonedev/archive/2012/08/29/2661726.html 在XCode中,我们经转载 2013-03-30 20:35:44 · 309 阅读 · 0 评论 -
pthread_cond_wait() 与 pthread_cond_signal
#include #include static pthread_mutex_t mtx = PTHREAD_MUTEX_INITIALIZER;static pthread_cond_t cond = PTHREAD_COND_INITIALIZER;struct node {int n_number;struct node *n_next;} *head = NULL;/转载 2013-04-02 09:53:07 · 259 阅读 · 0 评论 -
NAT 的四种类型
总结:1, 四种类型都需要内部主机先向外发起一次通信后,外部主机才可以和内部主机通信。 (在NAT打了个洞)2, 前三种类型所有的通信只通过同一个外部tuple(IP:PORT).2.1, 第一种类型允许任意主机通过任意端口通过这个外部Tuple和内部主机通信2.2, 第二种类型允许曾经通信过(打洞时)的外部主机的任意端口通过这个外部Tuple和内部主机通信2.3, 第三种类型转载 2013-04-23 17:55:06 · 344 阅读 · 0 评论 -
webrtc 学习笔记1--总览
说明:此系类的内容都是本人自己对libjingle native API代码的学习总结。其中一定包含大量不准确甚至是错误的内容。欢迎大家帮忙指出错误。1, 主页: http://www.webrtc.org/2, 项目由来。当前的webrtc项目是由Google收购的GIPS项目和libjingle项目融合而成。其中GIPS部分主要提供媒体的处理的功能。libjingle项目部原创 2013-09-15 14:55:22 · 1900 阅读 · 0 评论 -
webrtc 学习笔记2--libjingle 部分(P2P传输)
说明:此系类的内容都是本人自己对libjingle native API代码的学习总结。其中一定包含大量不准确甚至是错误的内容。欢迎大家帮忙指出错误。此文是个人根据webrtc项目中的libjingle部分总结出来。只代表webrtc中的libjingle部分的结构,不代表原始的libjingle项目。1, libjing 基本结构。下图仅描述视频部分的传输,音频部分有原创 2013-09-15 14:55:26 · 4532 阅读 · 2 评论 -
webrtc 学习笔记3--媒体处理及编解码部分
说明:此系类的内容都是本人自己对libjingle native API代码的学习总结。其中一定包含大量不准确甚至是错误的内容。欢迎大家帮忙指出错误。1, 此部分代码主要完成媒体处理,编解码,RTP/RTCP 编解码等。下图是主要的模块图:2,主要模块间通信及相互引用关系。下图中模块对应于上图中模块的描述。下图仅罗列主要模块的通信关系。3, Vide原创 2013-09-15 14:56:47 · 2347 阅读 · 0 评论 -
webrtc 学习笔记4--PeerConnection
此部分代码主要提供两个功能:1),适配P2P传输部分和媒体处理部分的不同接口2),封装易用的对外接口,方便使用者调用1, 接口适配部分:2, 简化接口部分:2.1,外部协作此部分代码实现了W3C webrtc 规范:http://dev.w3.org/2011/webrtc/editor/webrtc.html目前PeerConnection可以包含多个vi原创 2013-09-15 14:57:18 · 1998 阅读 · 1 评论 -
c++ 模板学习笔记2
一个可以保存多种参数的字典类#include #include #include #include #include #include using namespace std;struct BaseDictValue{ virtual ~BaseDictValue(){};};template struct DictValue: public BaseDictV原创 2013-09-15 15:00:00 · 293 阅读 · 0 评论 -
算法学习笔记3--背包九讲
总结:1,0/1背包状态方程:f[i][v]=max{f[i-1][v],f[i-1][v-c[i]]+w[i]}解释:f[i][v] 用前i个物品装满V能达到的最大价值内存优化:求f[i]仅会用到f[i-1]故仅用O(V)内存即可初始值:若要求必须恰好装满书包,则f[0][0]=0,f[0][k]=-∞, 其中0 如要求不必恰好装满书包,则转载 2013-02-13 23:45:42 · 282 阅读 · 0 评论 -
算法学习笔记4--字符串匹配算法
参考:http://blog.youkuaiyun.com/WINCOL/article/details/4795369http://blog.youkuaiyun.com/v_JULY_v/article/details/6545192总结:1) 基本思想:BF算法是最简单效率最低的算法。采用逐字符比较再回退。KMP, Hospool, BM 以及Sunday算法采用一个相同的基转载 2013-02-16 11:16:03 · 289 阅读 · 0 评论 -
算法学习笔记1 -- A* 算法
1,概述A*(A-Star)算法是一种静态路网中求解最短路最有效的方法。A* 算法是BFS算法的一种变形。A*算法在搜索的过程中, 会根据一定的启发函数选择一个合适的节点进行下一步的搜索,具体描述如下:公式表示为: f(n)=g(n)+h(n),其中 f(n) 是从初始点经由节点n到目标点的估价函数,g(n) 是在状态空间中从初始节点到n节点的实际代价,h(n) 是原创 2013-02-07 22:02:18 · 271 阅读 · 0 评论 -
Python 学习之一: 变量名及赋值操作的本质
python 中的变量名有些类似于C++中的指针的概念.python 中的赋值操作改变的并不是内存中变量的值, 而是变量名指向的变量.>>> var = 3>>> tmp = var>>> var3>>> tmp3>>> id(var)10417272>>> id(tmp)10417272>>> id(3)10417272>>> va原创 2011-12-04 17:20:53 · 937 阅读 · 0 评论 -
Python 学习之三: 类的一些特性
由于是一种脚本语言, python的类仅仅是在脚本语言的基础上进行的一定的封装1, 类定义中的表达式会在代码第一次被引用时执行(脚本的模式)>>> class A():... print "expression in the calss defination"... a=1... b=2... def f(self):...原创 2011-12-06 22:27:13 · 416 阅读 · 0 评论 -
Python 学习之四: 一些有用的内部函数
1, isinstance(object, classinfo)判断object的类型是否为classinfo.>>> a="a string">>> b=("1", "2")>>> c={1:2,2:4}>>> isinstance(a, basestring)True>>> isinstance(b, tuple)True>>> isinstance(c,原创 2011-12-08 13:27:19 · 296 阅读 · 0 评论 -
Python 学习之六: yield 与 Iterator
1, iterator 是一个实现了以下方法的对象:1)next方法: 返回容器的下一个元素(在此方法中需要抛出StopIteration异常以标识遍历结束)2)__iter__方法: 将迭代器设置为初始状态,返回迭代器自身当一个对象具备了以上两个方法则此对象可以在 "for x in obj" 语句中遍历class Iter: def __init__(self原创 2011-12-08 17:27:31 · 259 阅读 · 0 评论 -
shell脚本中的一些特殊符号
转自:http://blog.webshuo.com/2011/04/07/shell%E8%84%9A%E6%9C%AC%E4%B8%AD%E7%9A%84%E4%B8%80%E4%BA%9B%E7%89%B9%E6%AE%8A%E7%AC%A6%E5%8F%B7/Home SHELLshell脚本中的一些特殊符号shell脚本中的一些特殊符号分类 SHELL 星转载 2012-02-03 17:56:12 · 218 阅读 · 0 评论 -
shell中的getopts
转自:http://blog.chinaunix.net/space.php?uid=374372&do=blog&id=89799获取UNIX类型的选项: unix有一个优点就是标准UNIX命令在执行时都具有相同的命令行格式: command -options parameters 如果在执行Shell程序也采用上述格式,Bourne Shell中提供了一条获取和转载 2012-02-06 09:51:39 · 248 阅读 · 0 评论 -
深入理解linux的权限设置和SUID,SGID,粘滞位
转自:http://www.diybl.com/course/6_system/linux/Linuxjs/20081020/150812.html当您最初登录时,将启动一个新的 shell 进程。您已经知道,但是您可能还不知道这个新的 shell进程(通常是 bash)使用您的用户标识运行。照这样,bash 程序可以访问所有属于您的文件和目录转载 2012-02-04 19:52:22 · 940 阅读 · 1 评论 -
微软、谷歌、百度等公司经典面试100题[第1-60题]
refer:http://blog.youkuaiyun.com/v_JULY_v/article/details/6234496全新整理:微软、谷歌、百度等公司经典面试100题[第1-60题]整理:July、二零一一年三月九日。应网友承诺与要求,全新整理。转载,请注明出处。博主说明:此100题V0.2版,本人不再保证,还会提供答案。因为之前整理的微软100题,已经基本上,转载 2012-02-04 20:23:30 · 201 阅读 · 0 评论 -
HTTP协议详解
转自: http://blog.youkuaiyun.com/gueter/article/details/1524447Author :Jeffrey My Blog:http://blog.youkuaiyun.com/gueter/ 引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于转载 2011-12-31 11:18:51 · 207 阅读 · 0 评论 -
NoSQL数据库笔谈
referred from: http://sebug.net/paper/databases/nosql/Nosql.htmlNoSQL数据库笔谈databases , appdir , node , paper颜开 , v0.2 , 2010.2序思想篇CAP最终一致性变体BASE其他I/O的五分钟法则不要删除数据RA转载 2012-02-17 16:09:38 · 142 阅读 · 0 评论 -
Solaris内存监控 & solaris查看内存使用情况
ref: http://www.cnblogs.com/gunl/archive/2011/08/08/2131076.htmlSolaris内存监控 & solaris查看内存使用情况Solaris内存监控 Solaris内存主要用在以下几个方面:核心,进程,文件系统缓存。如下是监控内存使用的方法。可用系统物理内存 分配给Solaris核心的内存数量转载 2012-03-07 11:33:33 · 2086 阅读 · 0 评论 -
C++中统计实例个数 (Counting Objects in C++)
Counting Objects in C++By Scott Meyers, April 01, 1998http://www.drdobbs.com/184403484有时简单的事情也是有一些需要注意的地方。比如,你有一个类Widget,并且你想找到一个方法来统计运行时有多少个Widget的类的实例。一个简单并且可得都正确结果的方法是创建一个Static的变量。在类翻译 2012-04-15 15:48:00 · 1003 阅读 · 0 评论 -
c++ 模板学习笔记1
1, 根据输入决定模板类型template T bbb(T a, T1 b){ return a+b;}int main(){ return bbb(3, 7.5);}2, 部分类型指定, 部分类型由输入决定template T1 Func(const T2& p1) { return p1;}int main(){ return Fun原创 2013-09-15 14:59:35 · 335 阅读 · 0 评论