摘要: 以前在墨尔本的一个室友,突然打电话给我,在我这里马上要凌晨3点的时候。他让我猜他现在在哪里,我说不是在墨尔本嘛,你还能去哪。他很神秘地说,不是哦,我现在在西班牙。然后我一下子就愣住了。因为很久之前我在一个人人相册里看到有关西班牙的照片的时候,曾经跟他说,西班牙那么漂亮自己将来一定要去一次。 我没有想到的是,在我就要把自己曾经一闪而过的想法忘记的时候,他的电话就这么来了。到最后,站在我最想去的地方的人,却不是我。 挂了电话之后酷我音乐盒正好放到阿姆的lose yourself,依旧是那熟悉的节奏,和他的那段:look, if you had, one shot, or one opportuni 阅读全文
posted @ 2011-07-06 14:31 caleb yuan 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 第一部分 联网基础 第1章 联网概述、特性和类型 第2章 网络性能问题和概念 第3章 网络标准和标准化组织 第4章 数据表示和计算数学回顾 第二部分 OSI参考模型 第5章 通用OSI参考模型问题和概念 第6章 OSI参考模型的层次 第7章 OSI参考模型总结 第三部分 TCP/IP协议族和体系结构 第8章 TCP/IP协议族和体系结构... 阅读全文
posted @ 2011-11-08 13:11 caleb yuan 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 一个与C++库函数不相上下的QuickSort (言过其实了,C++ STL的Sort实现用的是Introsort,是快速排序的变种,主要是递归过深的时候自动转换为堆排或插入排序(是堆排还是插入排序还要视具体实现而定),可以保证最坏情况下还是O(nlogn),并且充分使用了尾递归优化(快排最后不是两个递归吗?最后一个递归可以不必真的递归,可以像gcd算法一样通过迭代参数来改善运行速度),STL快... 阅读全文
posted @ 2011-09-15 13:37 caleb yuan 阅读(152) 评论(0) 推荐(0) 编辑
摘要: long atol(const char *nptr){ int c; /* current char */ long total; /* current total */ int sign; /* if ''-'', then negative, otherwise positive */ /* skip whitespace */ while ( isspace((int)(unsigned char)*nptr) ) ++nptr; c = (int)(unsigned char)*nptr++; sign = c; if (c == '' 阅读全文
posted @ 2011-09-13 17:55 caleb yuan 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 作者 K_Eckel 原文地址 http://www.mscenter.edu.cn/blog/k_eckel 问题 在面向对象系统设计中经常可以遇到以下的两类问题: 1)为了提高内聚(Cohesion)和松耦合(Coupling),我们经常会抽象出一些类的公共接口以形成抽象基类或者接口。这样我们可以通过声明一个指向基类的指针来指向实际的子类实现,达到了多态的目的。这里很容易... 阅读全文
posted @ 2011-09-07 10:05 caleb yuan 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。 问题: 1、如何判断一个链表是不是这类链表? 2、如果链表为存在环,如何找到环的入口点? 解答: 一、判断链表是否存在环,办法为: 设置两个指针(fast, slow),初始值都指向头,slow每次前进一步,fast每次前进二步,如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针必定相遇。(当然,fast先行头到尾部为NULL,则为无环链表)程序如下: bool IsExitsLoop(slist *head){ slis... 阅读全文
posted @ 2011-09-05 15:15 caleb yuan 阅读(670) 评论(0) 推荐(0) 编辑
摘要: 摘自《c/c++中常见内存泄露与对策及预防措施浅析》 1 内存泄漏的发生方式 以发生的方式来分类,内存泄漏可以分为以下四类。 (1)常发性内存泄漏。 发生内存泄漏的代码会被多次执行到,每次被执行时候都会导致一块内存泄漏。 (2)偶发性内存泄漏。 发生内存泄漏的代码只有在某些特定环境或操作过程中才会发生。常发性和偶发性是相对的。对于特定的环境,偶发性的也许就变成了常发性的... 阅读全文
posted @ 2011-09-04 15:04 caleb yuan 阅读(1384) 评论(0) 推荐(2) 编辑
摘要: 最来在项目中遇到大型程序出现SIGSEGV ,一直不知道用core dump工具来调试程序,花了近一周的时间,才定位问题,老大很生气,后果很严重,呵呵,事后仔细学习了这块的知识,了解一点core dump的知识。 在使用半导体作为内存的材料前,人类是利用线圈当作内存的材料(发明者为王安),线圈就叫作core ,用线圈做的内存就叫作“core memory”。(线圈的单词应... 阅读全文
posted @ 2011-09-01 18:49 caleb yuan 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 一、R的数据结构 数值型:整形、单精度实型、双精度实型 字符型 复数型 逻辑型 缺失的数据默认是NA Inf表示+∞ -Inf表示-∞ Nan表示不是数字的值 可以通过函数mode()知道对象的类型 可以通过函数length()知道对象的长度 数据对象及类型 对象 类型 是否允许同一个对象中有多种类型? 向量 数值型、字符型、复数型、逻辑型 否 因子 数值型、字符型 否 数组 数值型、字符型、... 阅读全文
posted @ 2011-05-26 09:47 caleb yuan 阅读(594) 评论(0) 推荐(0) 编辑
摘要: main(int argc,char **argv) argv为指针的指针 argc为整数 char **argv or: char *argv[ ] or: char argv[ ][ ] main()括号内是固定的写法。 下面给出一个例子来理解这两个参数的用法: 假设程序的名称为prog, 1.当只输入prog,则由操作系统传来的参数为: argc=1,表示只有一程序名称。 argc只... 阅读全文
posted @ 2011-05-17 19:12 caleb yuan 阅读(1056) 评论(0) 推荐(0) 编辑