摘要: TCP三次握手 TCP协议提供可靠的连接服务,采用三次握手建立一个连接。以下步骤概述了通常情况下客户端计算机请求与服务器计算机简历TCP的过程:TCP三次握手图解TCP图解3次握手1. 客户端向服务器发送一个SYN置位的TCP报文,其中包含连接的初始序列号x和一个窗口大小(表示客户端上用来存储从服务器发送来的传入段的缓冲区的大小)。2. 服务器收到客户端发送过来的SYN报文后,向客户端发送一个SYN和ACK都置位的TCP报文,其中包含它选择的初始序列号y、对客户端的序列号的确认x+1和一个窗口大小(表示服务器上用来存储从客户端发送来的传入段的缓冲区的大小)。3. 客户端接收到服务器端返回的S. 阅读全文
posted @ 2011-10-03 16:18 westfly 阅读(443) 评论(0) 推荐(0) 编辑
摘要: 题目:You are given an array A that contains integers. Every integer occurs 3 times in A leaving one integer that appears only once. Fastest way to find that single integer.分析:如果这里的数组A的规模比较小,在内存的可以容纳的范围之内,可以建立hash表,顺序扫描A中的每一个 数,统计每个数的出现次数,最后找出仅出现一次的数即可,时间复杂度为O(N),空间复杂度为O(N)。如果数组A的规模很大呢?难道是进行外排序,然后 通过me 阅读全文
posted @ 2011-10-03 16:14 westfly 阅读(281) 评论(0) 推荐(0) 编辑
摘要: http://www.searchtb.com/2010/12/random-algorithm.html在日常工作中,经常需要使用随机算法。比如面对大量的数据, 需要从其中随机选取一些数据来做分析。 又如在得到某个分数后, 为了增加随机性, 需要在该分数的基础上, 添加一个扰动, 并使该扰动服从特定的概率分布。本文主要从这两个方面出发, 介绍一些算法, 供大家参考。 首先假设我们有一个使用的随机函数float frand(), 返回值在(0, 1)上均匀分布。大多数的程序语言库提供这样的函数。 在其他的语言如C/C++中, 可以通过间接方法得到。如 frand()= ((float)rand 阅读全文
posted @ 2011-10-03 12:35 westfly 阅读(324) 评论(0) 推荐(0) 编辑