彭小路
My life is brilliant~

导航

 

2013年1月14日

摘要: 前段时间正好把很久前买的《Effective C++ 中文版 2nd Edition》看完,觉得挺不过瘾,而且第三版也出了很长时间了,比第二版多了5个Item,有点纠结会不会遗漏掉什么重要的东西,于是又买了一本第三版的英文+评注版,趁热打铁看第二遍,把一些存在疑惑和不解的代码也手写运行一下,增强理解用。正如我之前Blog中提过,在看C++之前,先是看了两本C语言的书,也写了不少的C代码(比较遗憾的是,都是些实现算法的代码,不是操作系统相关的代码)。之前零零散散翻过《C++ Primer》,对C++的认识基本停留在类、继承和模板编程的表面认识上,没有用C++写过大规模的代码过,半懂不懂的看过侯捷 阅读全文
posted @ 2013-01-14 21:11 彭小路 阅读(1143) 评论(1) 推荐(0) 编辑
 

2012年12月14日

摘要: 我看过很多类似#程序员必读XX本书#的书单,似乎在几乎所有的推荐书单里面,《程序设计实践》(英文名The Practice of Programming)都没有出现作为一本被推荐的书。我也是在今年暑假突然想开始读一些英文版的技术书籍,然后豆瓣上大致浏览了一下,机缘巧合的买下了这本书。在技术博客,出版书籍充斥着各种云计算、大数据等时髦名词的今天,这本书从名字上就不是太引人注目,作为作者之一的Brian W. Kernighan这个名字似乎也很陌生,不过他还有一本书,就是被奉为C圣经的《The C Programming Language》,相信你一定听过。而另一位作者Rob Pike,可能更加陌 阅读全文
posted @ 2012-12-14 14:01 彭小路 阅读(3658) 评论(2) 推荐(1) 编辑
 

2012年12月13日

摘要: mbuf全称即memory buffer,即存储器缓存,在内核中属于全局支持的范畴。从网络协议的角度来说,mbuf的主要用处是保存在进程和网络接口间相互传递的用户数据。当然,在实际使用中,mbuf除了保存用户数据以外,还需要保存其他各类数据,比如比较常见的网络报文头部的源地址与目的地址以及端口信息乃至Socket选项等。在软件系统的设计中,存储器缓存的概念其实应该并不陌生,它在设计理念上有点像对应到硬件中各种Cache的概念,比如CPU与内存之间有Cache,近阶段比较流行的SSD硬盘一般也配备Cache,无非是对高性能的要求做的一种层次性的设计。使用内存缓冲区,可以减少进程之间的相互等待时间 阅读全文
posted @ 2012-12-13 16:40 彭小路 阅读(6744) 评论(0) 推荐(0) 编辑
 

2012年11月5日

摘要: 今天在做HDOJ上的1800题,题目描述的很复杂,其实解题思路归纳起来就这么一句话: “给你一系列数字,找出出现次数最多的那个”由于测试样本给的数字可能很大,范围超出__int64的表示范围,所以只能用个字符串来写大数了用的是C语言,也只能自己写hash算法。由于是多组测试数据,所以每次都要把hash表清空,开始随手写了个1 for(i=0;i<NHASH;i++)2 carr[i] = NULL;代码提交后,不管怎么样,AC了,不过内存使用虽然在AC范围内,但也出奇的大。想了半天,是上面代码的问题,因为数组里面每个元素都可能是长度大于一的链表,结构如下:1 typedef st... 阅读全文
posted @ 2012-11-05 19:54 彭小路 阅读(851) 评论(0) 推荐(0) 编辑
 

2012年10月24日

摘要: 在介绍母函数之前,还是先描述一下我们需要用母函数来解决的问题:假设我们有1元,2元,5元和10元三种硬币,而我们需要20块钱,那么我们可以从这三种硬币中找出多少种总值为20的组合方式呢?比如20个1块钱是一种,而一个10元的加2个5元的硬币又是一种;饥肠辘辘的猫哥说她要立马吃个十分饱,她面前有三种食物,填充值分别为一成饱的小面包、填充值为三成饱的烤鸡腿和填充值为十成饱的烤乳猪,请问猫哥能找到几种吃法恰好每次都能吃成十成饱当然,你还可以猛击下面两个连接,看看类似的算法题http://acm.hdu.edu.cn/showproblem.php?pid=1028http://acm.hdu.edu 阅读全文
posted @ 2012-10-24 19:25 彭小路 阅读(691) 评论(0) 推荐(1) 编辑