- 博客(32)
- 资源 (7)
- 收藏
- 关注

转载 Linux服务器性能评估与优化
一、影响Linux服务器性能的因素 1. 操作系统级 Ø CPUØ 内存Ø 磁盘I/O带宽Ø 网络I/O带宽 2. 程序应用级 二、系统性
2011-08-28 00:31:27
1672

转载 企业文件服务器搭建案例
6.9 章节案例在本章案例讲解中通过4个模拟项目对Samba的功能进行演示,其中第一个案例模拟一个企业中服务器全部基于RHEL5.x,客户端在访问Samba服务器时,用户认证及所有用户行为控制全部通过RHEL5.x完成。第二个案例模拟一个异构环境,在企业中已使用微软的Wi
2011-08-13 01:08:18
11062
转载 1024! 末尾有多少个0?
1024! 末尾有多少个0?末尾0的个数取决于乘法中因子2和5的个数。显然乘法中因子2的个数大于5的个数,所以我们只需统计因子5的个数。是5的倍数的数有: 1024 / 5 = 204个是25的倍数的数有:1024 / 25 = 40个是125的倍数的数有
2011-08-29 16:05:59
7870
转载 Linux Epoll介绍和程序实例
1. Epoll 是何方神圣?Epoll 可是当前在 Linux 下开发大规模并发网络程序的热门人选, Epoll 在 Linux2.6 内核中正式引入,和 select 相似,其实都 I/O 多路复用技术而已 ,并没有什么神秘的。其实在 Linux 下设计并发网
2011-08-28 00:55:16
1185
转载 从300万字符串中找到最热门的10条
象搜索的输入信息是一个字符串,统计300万输入信息中的最热门的前10条,我们每次输入的一个字符串为不超过255byte,内存使用只有1G。请描述思想,写出算法(c语言),空间和时间复杂度。答案: 300万个字符串最多(假设没有重复,都是最大长度)占用内存3M*1K
2011-08-27 14:23:01
2903
转载 从两个文件(各含50亿个url)中找出共同的url
给定a、b两个文件,各存放50亿个url,每个url各占用64字节,内存限制是4G,如何找出a、b文件共同的url?答案: 可以估计每个文件的大小为5G*64=300G,远大于4G。所以不可能将其完全加载到内存中处理。考虑采取分而治之的方法。 遍历文件a,对每
2011-08-27 14:21:30
2457
转载 如何找出字典中的兄弟单词
给定一个单词a,如果通过交换单词中字母的顺序可以得到另外的单词b,那么定义b是a的兄弟单词。现在给定一个字典,用户输入一个单词,如何根据字典找出这个单词有多少个兄弟单词?答案: 使用hash_map和链表。 首先定义一个key,使得兄弟单词有相同的key,不是
2011-08-27 14:20:49
2129
转载 海量日志数据,提取出某日访问百度次数最多的那个IP。
IP地址最多有2^32=4G种取值可能,所以不能完全加载到内存中。 可以考虑分而治之的策略,按照IP地址的hash(IP)%1024值,将海量日志存储到1024个小文件中。每个小文件最多包含4M个IP地址。 对于每个小文件,可以构建一个IP作为key,出现次数作为valu
2011-08-27 14:19:55
1813
转载 找出1到10w中没有出现的两个数字
有1到10w这10w个数,去除2个并打乱次序,如何找出那两个数?方法1:申请10w个bit的空间,每个bit代表一个数字是否出现过。开始时将这10w个bit都初始化为0,表示所有数字都没有出现过。然后依次读入已经打乱循序的数字,并将对应的bit设为1。
2011-08-27 14:18:16
2046
转载 c语言中局部变量能否和全局变量重名?
局部变量可以与全局变量同名。在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。要用全局变量,需要使用"::"。对于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循环体内都定义一个同名的局部变量,而那个局部变量的作用域就在那个循环体内。
2011-08-27 14:15:09
9265
转载 找到两个单向链表的第一个公共节点
如果两个单向链表有公共节点,则两个链表会构成Y型结构,最后一个节点相同。我们可以从头开始遍历两个链表,找到最后一个节点的指针,设为p_a,p_b。同时记录下两个链表的长度len_a,len_b(假设len_a >= len_b)。如果p_a == p_b,则说明两个链
2011-08-27 14:14:19
1626
转载 单向链表中,如何在给定节点前快速插入一个节点?
对于单向链表来说,在某个节点后面插入一个新节点是非常快的。所以我们可以在给定节点后面插入一个新节点,然后交换给定节点和新节点的数据即可。
2011-08-27 14:11:49
4229
转载 有一个特殊的链表,其中每个节点不但有指向下一个节点的指针pNext,还有一个指向链表中任意节点的指针pRand,如何拷贝这个特殊链表?
拷贝pNext指针非常容易,所以题目的难点是如何拷贝pRand指针。假设原来链表为A1 -> A2 ->... -> An,新拷贝链表是B1 -> B2 ->...-> Bn。为了能够快速的找到pRand指向的节点,并把对应的关系拷贝到B中。我们可以将两个链表合并成A
2011-08-27 14:09:52
2825
转载 session和cookie的区别?
由于http是无状态的协议,所以我们需要使用cookie和session来维护服务器和客户端交互过程中的上下文信息。cookie是存储在客户端的数据。服务器通过在http响应头,或者通过网页中的脚本在客户端中生成cookie。当客户端访问某个页面时,会把符合条件的cookie
2011-08-27 14:07:15
3090
转载 在100w个数中找最大的前100个数
应该使用某种数据结构保存迄今最大的100个数。每读到一个新数时,将新数和保存的100个数中的最小一个相比较,如果新数更大些,则替换。这样扫描一遍100w个数也就获得了最大的100个数。对于保存的100个数的数据结构,应该在最小复杂度的条件下满足1)可以获得最小的数;2
2011-08-27 14:03:32
2672
转载 在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。
在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。不妨假设10G个整数是64bit的。2G内存可以存放256M个64bit整数。我们可以将64bit的整数空间平均分成256M个取值范围,用2G的内存对每个取值范围内出现整数个数进行
2011-08-27 13:54:44
3145
转载 求一个论坛的在线人数,假设有一个论坛,其注册ID有两亿个,每个ID从登陆到退出会向一个日志文件中记下登陆时间和退出时间,要求写一个算法统计一天中论坛的用户在线分布,取样粒度为秒。
求一个论坛的在线人数,假设有一个论坛,其注册ID有两亿个,每个ID从登陆到退出会向一个日志文件中记下登陆时间和退出时间,要求写一个算法统计一天中论坛的用户在线分布,取样粒度为秒。一天总共有 3600*24 = 86400秒。定义一个长度为86400的整数数组i
2011-08-27 13:53:45
4898
转载 美丽的Hash
提到Hash,大家都会想到它的“快速存取”,在O(1)时间复杂度里就可以查找到目标元素,或者判断其是否存在,基于Hash我们有HashTable,HashMap等多种数据结构。Hash数据结构里的数据对外是杂乱无序的,我们无法得知其具体存储位置,也不知道各个存储元素位置之间的相互
2011-08-27 13:46:24
1444
转载 如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。其中内存只有1G。
如何有效合并两个文件:一个是1亿条的用户基本信息,另一个是用户每天看电影连续剧等的记录,5000万条。其中内存只有1G。显然内存不能同时存下所有的数据,所以考虑分而治之的思想。假设1K Byte可以保存一个用户的基本信息和看电影记录。我们可以将基本信息和看电影记录
2011-08-27 13:45:05
4793
转载 c++中引用和指针有什么不同?指针加上什么限制等于引用?
引用不是一个变量,它只表示该引用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。引用一经确定就不能修改。指针是一个变量,需要在内存中分配空间,此空间中存储所指对象的地址。由于指针是一个普通变量,所以其值还可以通过重新赋值
2011-08-27 13:42:00
1950
转载 平面上画1999条直线,最多能将平面分成多少部分?
在一个平面上画1999条直线,最多能将这一平面划分成多少个部分?没有直线时有一个空间;(1)1条直线时,这条这些可以将这个空间分成两个;(1+1)2条直线时,第二条直线可以和第一条直线相交,这样第二条直线可以将两个空间分成四个;(1+1+2)....注意到画每
2011-08-27 13:38:42
5881
转载 数组与链表的区别?
数组与链表的区别?在数组中,元素在内存中连续存放。对于访问操作,由于元素类型相同,占用内存相同,所以可以通过数组的下标计算出元素所在的内存地址,便于快速访问。但对于插入或删除操作,需要移动大量元素,所以速度比较慢。在链表中,元素在内存中没有连续存放,而是通过元素中
2011-08-27 13:37:55
1312
转载 tcp三次握手的过程,accept发生在三次握手哪个阶段?
tcp三次握手的过程,accept发生在三次握手哪个阶段?第一次握手:客户端发送syn包(syn=j)到服务器。第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个ASK包(ask=k)。第三次握手:客户端收到服务器的SYN+AC
2011-08-27 13:36:48
11953
1
转载 const的含义及实现机制
const的含义及实现机制,比如:const int i,是怎么做到i只可读的?const用来说明所定义的变量是只读的。这些在编译期间完成,编译器可能使用常数直接替换掉对此变量的引用。
2011-08-27 13:35:48
5776
转载 memcpy 和 memmove 有什么区别?
memcpy 和 memmove 有什么区别?memcpy和memmove都是将源地址的若干个字符拷贝到目标地址。如果源地址和目标地址有重叠,则memcpy不能保证拷贝正确,但memmove可以保证拷贝正确。 例如:char src[20];// set
2011-08-27 13:34:46
1244
转载 全局变量和局部变量有什么区别?
全局变量和局部变量有什么区别?怎么实现的?操作系统和编译器是怎么知道的?全局变量是整个程序都可访问的变量,生存期从程序开始到程序结束;局部变量存在于模块中(比如某个函数),只有在模块中才可以访问,生存期从模块开始到模块结束。全局变量分配在全局数据段,在程序开始运行
2011-08-27 13:30:17
6798
转载 HTTP中Put和Post的区别
解释HTTP中Get和Post。它们有什么区别,哪个使用时更加安全?Get和Post都是浏览器向网页服务器提交数据的方法。 Get把要提交的数据编码在url中,比如 http://hi.baidu.com/mianshiti?key1=value1&key2=
2011-08-27 13:28:44
4792
2
转载 从输入url到显示网页,后台发生了什么?
当在浏览器中输入一个 url 后回车,后台发生了什么?比如输入 http://hi.baidu.com/mianshiti 后,你看到了IT面试题的博客首页,那么这一切是如何发生的呢?简单来说有以下步骤:1. 查找域名对应的IP地址。这一步会依次查找浏览器缓存,系
2011-08-27 13:22:40
2230
1
转载 找到链表的倒数第m个节点
方法1:首先遍历链表,统计链表的长度N。然后再次遍历链表,找到第N-m+1个节点,即为倒数第m个节点。方法2:使用两个指针,并使它们指向的节点相距m-1个。然后同时向前移动两个指针,当一个指针指最后一个节点时,第二个指针指向倒数第m个节点。两个方法
2011-08-27 13:15:38
804
转载 个人整理的Linux Shell语法速查表(用C语言语法来作对比)
虽然学过Linux Shell编程,但由于编写Shell脚本的机会实在是比较少(通常在项目初期搭建开发环境时编写得比较多一些),所以一些语法久而久之就会忘了,一个简单的语法去翻书效率实在是慢,所以就个人整理了一个表格,由于我用的编程语言是C/C++,所以在编程的时候往往脑海里面首
2011-08-23 23:44:37
1109
1
原创 Redhat enterprise linux 6上android内核调试平台搭建步骤
Redhat enterprise linux 6上android内核调试平台搭建步骤前提是java SDK已经装好,系统有可能自带。java -version命令检查1. 下载交叉编译工具,地址http://www.codesourcery.com/gn
2011-08-14 00:35:18
2515
原创 redhat enterprise linux 6中获取android内核代码
redhat enterprise linux 6中获取android内核代码1.在/root下添加bin目录 mkdir bin2.将bin目录添加到环境变量中 export PATH=/root/bin/:$PATH3.通过cURL来下
2011-08-13 22:57:00
1092
Linux 网络编程
2010-04-18
network-manager
2013-05-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人