- 博客(239)
- 资源 (2)
- 收藏
- 关注

转载 TCP协议疑难杂症全景解析
转自http://blog.youkuaiyun.com/dog250/article/details/6612496说明:1).本文以TCP的发展历程解析容易引起混淆,误会的方方面面2).本文不会贴大量的源码,大多数是以文字形式描述,我相信文字看起来是要比代码更轻松的3).针对对象:对TCP已经有了全面了解的人。因为本文不会解析TCP头里面的每一个字段或者3次握手的细节,也不会解释慢启动
2014-03-13 22:12:17
902

转载 教你如何迅速秒杀掉:99%的海量数据处理面试题
教你如何迅速秒杀掉:99%的海量数据处理面试题作者:July出处:结构之法算法之道blog前言 一般而言,标题含有“秒杀”,“99%”,“史上最全/最强”等词汇的往往都脱不了哗众取宠之嫌,但进一步来讲,如果读者读罢此文,却无任何收获,那么,我也甘愿背负这样的罪名,:-),同时,此文可以看做是对这篇文章:十道海量数据处理面试题与十个方法大总结的
2013-12-12 12:18:18
933

转载 2014九月十月百度,迅雷,华为,阿里巴巴,最新校招笔试面试题
九月十月百度,迅雷,华为,阿里巴巴,最新校招笔试面试六十题题记 本博客自2010年10月11日开通以来,已经帮助了一大批人找到工作,特别是连续三年在每一年的9、10月份陪伴了至少三届毕业生找工作的旅程,包括校招中的笔试面试,今年也不会例外,我会在本博客开通3周年之际一如既往的陪伴大家一起成长。 本文所整理的全部笔试面试题要么来源于我群内群
2013-12-12 12:05:35
2841

转载 2013九月十月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试题
九月十月百度人搜,阿里巴巴,腾讯华为小米搜狗笔试面试八十题引言 自发表上一篇文章至今(事实上,上篇文章更新了近3个月之久),blog已经停了3个多月,而在那之前,自开博以来的21个月每月都不曾断过。正如上一篇文章支持向量机通俗导论(理解SVM的三层境界)末尾所述:”额,blog许久未有更新了,因为最近实在忙,无暇顾及blog。“与此同时,工作之余,也一直在
2013-12-12 12:02:41
7764

转载 2012九月十月腾讯,网易游戏,百度最新校园招聘笔试题
十月下旬腾讯,网易游戏,百度最新校园招聘笔试题集锦(第271-330题)引言 此文十月百度,阿里巴巴,迅雷搜狗最新面试十一题已经整理了最新的面试题70道,本文依次整理腾讯,网易游戏,百度等各大公司最新校园招聘的笔试题,后续将继续整理十月下旬的笔/面试题。腾讯2011.10.15校园招聘会笔试题1、下面的排序算法中,初始数据集的排列顺序对算法的性能无
2013-12-12 11:59:35
5853

转载 8
近期找工作的过程中,因为自己比较喜欢C/C++,对多线程以及网络方面比较熟悉, 所以下面的这些问题是这段时间在面试过程中被问到了,现在对这些问题进行了汇总!! 面试过程真的是一个非常好的学习过程,下面那些问题自己现在基本可以解决, 我的答案或者观点就不给出了,看到这篇文章的同学可以根据自己的情况,测试一下自己....哈哈... 也可以
2013-12-01 22:35:48
1905
原创 shell统计文件夹代码行数
最粗略版Shell代码 find . -name "*.java"|xargs wc -l|grep "total"|awk '{print $1}' find . -name "*.java"|xargs cat|wc -l #Output:37634 上面的两句效果一样,只不过第二种是先利用cat将多个java文件的内容合并输出了
2014-06-08 20:20:22
1260
原创 最长递增子序列
int lis(int a[],const int n){ int len = 0; int f[n+1]; for(int i = 0;i < n;i++) { f[i] = 1; for(int j = 0;j < i;j++) if(a[i] > a[j] && f[i] < f[j]+1)
2014-04-08 23:25:03
755
转载 Catalan数
转自:0、前言当年博主自己参加校招笔试面试时就遇到过几次catalan数相关的题目,今年又到了互联网招聘季,翻看下近期各大公司的笔试面试题,发现它依旧是很容易被考察的点。尴尬的是,博主自己觉得catalan数相关的题目不好归类到某种具体的数据结构或者算法里面(计算catalan数的那个小程序不算算法吧。。。),而是比较偏数学题。不管怎么说,它是笔试面试中容易出现的东西,而有一部
2014-04-08 22:31:08
1173
原创 KMP算法
void ComputeNext(const char *p,int next[]){ const int n = strlen(p); next[0] = -1; for(int i = 1,j = -1;i < n;i++) { while(j > -1 && p[j+1] != p[i]) j = next[j];
2014-04-07 22:29:03
714
原创 快速取幂、幂取模
int pow(int a,int b){ int ret = 1; while(b != 0) { if(b & 0x1) ret *= a; a *= a; b >>= 1; } return ret;}int powMod(int a,int b,int n){ i
2014-04-07 20:16:23
832
原创 归并求逆序对数
int mergeCount(int a[],int b[],int start,int end){ if(start+1 == end) return 0; int mid = start + (end-start>>1); int i = start; int j = mid; int k = start; int cnt =
2014-04-05 17:12:46
632
转载 TCP握手最后一次失败
最近笔试遇到一个题目:如果tcp建立连接时第三次握手失败,tcp会做何操作?该问题的本质是判断我们对tcp的状态转换是否能有比较深刻的理解。只要理解了下面的状态转换图,很容易回答上述问题。在此,将《TCP/IP协议族》中每一个状态的转换伪代码整理下:
2014-04-03 19:03:03
1475
原创 栈溢出几种情况
一、局部数组过大。当函数内部的数组过大时,有可能导致堆栈溢出。二、递归调用层次太多。递归函数在运行时会执行压栈操作,当压栈次数太多时,也会导致堆栈溢出。三、指针或数组越界。这种情况最常见,例如进行字符串拷贝,或处理用户输入等等。
2014-03-27 15:42:24
14830
1
原创 gdb常用命令
调用gdb编译需要在cc后面加 -g参数再加-o;[root@redhat home]#gdb 调试文件:启动gdb(gdb) l :(字母l)从第一行开始列出源码原文链接(gdb) break n :在第n行处设置断点(gdb) break func:在函数func()的入口处设置断点(gdb) info break: 查看断点信息(gdb
2014-03-26 13:53:14
526
原创 反转一个整数的位
int reverseBits(unsigned x){ int val = 0; for(int i = 0;i < 32;i++) { val = (val<<1) | (x&0x1); x >>= 1; } return val;}
2014-03-23 16:44:27
602
原创 grep查找字符串
如果你想在当前目录下 查找"hello,world!"字符串,可以这样: grep -rn "hello,world!" * * : 表示当前目录所有文件,也可以是某个文件名-r 是递归查找-n 是显示行号-R 查找所有文件包含子目录-i 忽略大小写下面是一些有意思的命令行参数: grep -i pattern
2014-03-23 11:53:54
857
原创 vector实现(待补充)
templateclass vector{public: //ctor vector() : data_(NULL), size_(0) { } explicit vector( size_t n, const T& value = T()) { data_ = new T[n]; for (s
2014-03-19 16:19:43
566
原创 TIME_WAIT过多的处理方法
http://blog.youkuaiyun.com/yusiguyuan/article/details/21445883http://www.itdhz.com/post-298.html
2014-03-19 16:02:49
1753
转载 C++内存布局
转自http://www.cnblogs.com/kekec/archive/2013/01/27/2822872.html#类中的元素0. 成员变量 1. 成员函数 2. 静态成员变量 3. 静态成员函数 4. 虚函数 5. 纯虚函数#影响对象大小的因素0. 成员变量 1. 虚函数表指针(_vftptr) 2. 虚基类表指针(_
2014-03-15 17:30:48
594
转载 如何处理海量数据
转自http://www.cnblogs.com/lovexinsky/archive/2012/03/09/2387583.html在实际的工作环境下,许多人会遇到海量数据这个复杂而艰巨的问题,它的主要难点有以下几个方面:一、数据量过大,数据中什么情况都可能存在。如果说有10条数据,那么大不了每条去逐一检查,人为处理,如果有上百条数据,也可以考虑,如果数据上到千万级别,甚
2014-03-13 23:53:39
952
原创 死锁产生的原因及四个必要条件
产生死锁的原因主要是:(1) 因为系统资源不足。(2) 进程运行推进的顺序不合适。(3) 资源分配不当等。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同,也可能产生死锁。产生死锁的四个必要条件:(1) 互斥条件:一个资源每次只能被一个进程使用。(2) 请求与保持条件:一个进
2014-03-13 23:24:54
662
原创 25道常见的算法面试题
Problem 1 : Is it a loop ? (判断链表是否有环?)Assume that wehave a head pointer to a link-list. Also assumethat we know the list is single-linked. Can you come up an algorithm to checkwhether this link
2014-03-12 17:54:06
835
原创 为什么TCP连接需要三次握手分开需要四次握手
TCP的三次握手和四次断开TCP是一个面向连接的服务,面向连接的服务是电话系统服务模式的抽象,每一次完整的数据传输都必须经过建立连接,数据传输和终止连接3个过程,TCP建立连接的过程称为三次握手,下面看一下三次握手的具本过程TCP三次握手过程1 主机A通过向主机B 发送一个含有同步序列号的标志位的数据段给主机B ,向主机B 请求建立连接,通过这个数据段,主机A告诉主机B 两件事
2014-03-11 11:27:35
820
转载 Trie树详解及其应用
转自http://blog.youkuaiyun.com/hackbuteer1/article/details/7964147一、知识简介 最近在看字符串算法了,其中字典树、AC自动机和后缀树的应用是最广泛的了,下面将会重点介绍下这几个算法的应用。 字典树(Trie)可以保存一些字符串->值的对应关系。基本上,它跟 Java 的 HashMap 功能相同,都是 key-v
2014-03-11 00:06:23
545
转载 轻松搞定面试中的红黑树问题
版权所有,转载请注明出处,谢谢!http://blog.youkuaiyun.com/silangquan/article/details/18655795 连续两次面试都问到了红黑树,关键两次都没有答好,这次就完整地来学习整理一下。没有学习过红黑树的同学请参考:> Chapter 13 Red-Black Trees Chapter 14 Augmenting
2014-03-10 23:52:50
739
转载 placement new
placement new是重载operator new的一个标准、全局的版本,它不能被自定义的版本代替(不像普通的operator new和operator delete能够被替换成用户自定义的版本)。它的原型如下:void *operator new( size_t, void *p ) throw() { return p; } 首先我们区分下几个容易混淆的关键词:new、
2014-03-05 22:38:40
560
原创 TCP定时器
七个定时器连接建立(connection establishment)”定时器在发送SYN报文段建立一条新连接时启动。如果在75秒内没有收到响应,连接建立将中止。“重传(retransmission)”定时器在TCP发送某个数据段时设定。如果该定时器超时而对端的确认还未到达,TCP将重传该数据段。重传定时器的值 (即TCP等待对端确认
2014-03-03 12:23:41
513
转载 GDB中应该知道的几个调试方法
转自http://coolshell.cn/articles/3643.html七、八年前写过一篇《用GDB调试程序》,于是,从那以后,很多朋友在MSN上以及给我发邮件询问我关于GDB的问题,一直到今天,还有人在问GDB的相关问题。这么多年来,有一些问题是大家反复在问的,一方面,我觉得我以前的文章可能没有说清楚,另一方面,我觉得大家常问的问题正是最有用的,所以,在这里罗列出来。希望大家补充
2014-03-03 00:25:42
589
转载 为什么内联函数,构造函数,静态成员函数不能为virtual函数?
http://blog.youkuaiyun.com/ylong17/article/details/6652344为什么内联函数,构造函数,静态成员函数不能为virtual函数?1> 内联函数内联函数是在编译时期展开,而虚函数的特性是运行时才动态联编,所以两者矛盾,不能定义内联函数为虚函数2> 构造函数构造函数用来创建一个新的对象,而虚函数的运行是建立在对象的基础
2014-03-03 00:09:45
840
原创 两次fork防止僵尸进程
1、何谓僵尸进程? 在linux系统中,一个已经终止但父进程尚未对其进行善后处理(释放子进程相关信息占用的资源)的子进程叫做僵尸进程 。子进程结束时,父进程调用pid_t wait(int *statloc)或者pid_t waitpid(pid_t pid,int *statloc,int options)获取内核中为子进程保存的信息(进程id,终止状态)。2、僵尸进
2014-03-02 23:28:34
1117
转载 网络编程面试题
另外http://www.cnblogs.com/wickedboy237/archive/2013/05/12/3074362.html1.下列程序在32位linux或unix中的结果是什么? func(char *str){ printf("%d",sizeof(str)); printf("%d",strlen(str));}main(){
2014-03-02 22:15:41
690
原创 有 1000 个一模一样的瓶子,其中有 999 瓶是普通的水,有一瓶是毒药。任何喝下毒药的生物都会在一星期之后死亡。现在,你只有 10 只小白鼠和一星期的时间,如何检验出哪个瓶子里有毒药?
根据2^10=1024,所以10个老鼠可以确定1000个瓶子具体哪个瓶子有毒。具体实现跟3个老鼠确定8个瓶子原理一样。000=0001=1010=2011=3100=4101=5110=6111=7一位表示一个老鼠,0-7表示8个瓶子。也就是分别将1、3、5、7号瓶子的药混起来给老鼠1吃,2、3、6、7号瓶子的药混起来给老鼠2吃,4、5、6、7号瓶子的药混起来给
2014-03-02 22:04:27
8605
转载 找工作笔试面试那些事儿
http://blog.youkuaiyun.com/yaoqiang2011/article/category/1664765/1
2014-03-02 21:45:02
775
转载 TCP/IP,http,socket,长连接,短连接——小结。
http://blog.youkuaiyun.com/thomescai/article/details/6804270概要: 之前对这几个概念有点糊涂,查阅了些资料,稍微概括下他们的区别吧。如有错误,请拍~~~先看图:TCP/IP是什么? TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICM
2014-03-01 20:17:07
754
转载 linux下利用valgrind工具进行内存泄露检测和性能分析
http://blog.youkuaiyun.com/yanghao23/article/details/7514587
2014-03-01 20:12:19
589
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人