从写一个TCP套接字的write调用成功返回仅仅表示我们可以重新使用原来的应用进程缓冲区,并不代表对端TCP或应用进程已接收到数据。
对端TCP必须确认收到的数据,伴随来自对端的ACK的不断到达,本端TCP至此才能从套接字发送缓冲区中丢弃已确认的数据,TCP必须为已发送的数据保留一个副本,直到它被对端确认为止。
UDP不保存应用进程数据的副本因此无需一个真正的发送缓冲区,wri...
分类:
其他好文 时间:
2014-07-20 22:12:23
阅读次数:
333
适配器模式(Adapter)
将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。
在我们生活中存在很多适配器的例子,如插座转换器、笔记本电脑电源适配器等。今天,我们就来看一下嘴熟悉的笔记本电源适配器的例子。通常,笔记本电脑需要的电流都是12-20V以内的直流电流,而我们家庭用电通常是220...
分类:
其他好文 时间:
2014-07-20 22:28:23
阅读次数:
245
Given a binary tree, return the zigzag level order traversal of its nodes' values. (ie, from left to right, then right to left for the next level and alternate between).
For example:
Given binary...
分类:
其他好文 时间:
2014-07-20 22:41:23
阅读次数:
303
汉诺塔
汉诺塔II hdu1207:
先说汉若塔I(经典汉若塔问题),有三塔,A塔从小到大从上至下放有N个盘子,现在要搬到目标C上,
规则小的必需放在大的上面,每次搬一个,求最小步数。这个问题简单,DP:a[n]=a[n-1]+1+a[n-1],先把
上面的n-1个放在B上,把最大的放在目标C上,再把N-1个放回到C上即可。
网上的一种最优解法如下:(1)将x(1
#inc...
分类:
其他好文 时间:
2014-07-20 23:18:31
阅读次数:
272
pre_permutation
----------------------------------------------------------------
描述: 取得 [first, last) 所标示之序列的前一个排列组合。如果没有,返回 false,有,返回true
思路:
从后往前
1.找两个相邻元素,令左端的元素为*i,右端的元素为*ii,且满足 *i > *ii
2.找出第一个小于 *i 的元素,令其为 *j,将*i,*j元素对调
3.将ii右端的所有元素颠倒
template <cl...
分类:
其他好文 时间:
2014-07-20 23:07:55
阅读次数:
286
图片放大
*{margin:0; padding:0;}
ul,li{margin-right: 0; padding:0;}
li{list-style:none;}
a{text-decoration: none;}
.clearfix:before,.clearfix:after{display: table; content: "";}...
分类:
其他好文 时间:
2014-07-20 23:08:58
阅读次数:
336
Swift 中类和结构体有很多共同点。共同处在于:
? 定义属性用于储存值
? 定义方法用于提供功能
? 定义下标用于通过下标语法访问值
? 定义初始化器用于生成初始化值
? 通过扩展以增加默认实现的功能
? 符合协议以对某类提供标准功能
更多信息请参见属性,方法,下标,初始过程,扩展,和协议。
与结构体相比,...
分类:
其他好文 时间:
2014-07-20 22:17:13
阅读次数:
285
UVA 11149 - Power of Matrix
题目链接
题意:给定一个n*n的矩阵A和k,求∑kiAi
思路:利用倍增去搞,∑kiAi=(1+Ak/2)∑k/2iAi,不断二分即可
代码:
#include
#include
const int N = 45;
int n, k;
struct mat {
int v[N][N];
mat() ...
分类:
其他好文 时间:
2014-07-20 23:07:20
阅读次数:
274
random_shuffle
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
描述:将[first,last)的元素次序随机重排。
思路:
必须是 RandomAccessIterator
1.遍历区间
2.产生[...
分类:
其他好文 时间:
2014-07-20 23:12:29
阅读次数:
231
响应事件:
1.设置一个html标记
Ext JS 4 Cookbook
2.使用get函数获取此标记对象
var el = Ext.get('my-div');
3.将响应函数和对象的事件绑定
el.on('click', function(e, target, options){
alert('The Element was clicked!');
alert(this.id);
...
分类:
Web程序 时间:
2014-07-20 22:18:13
阅读次数:
290
Linux使用locate命令定位文件...
分类:
系统相关 时间:
2014-07-20 23:11:00
阅读次数:
268
partial_sort / partial_sort_copy
-----------------------------------------------------------------------------------------------------------------------------------------
描述:本算法接受一个 middle 迭代器(位于序列[first, last) 之列),然后重新安排[first, last),
使序列中的 middle - firs...
分类:
其他好文 时间:
2014-07-20 23:37:44
阅读次数:
293
equal_range(应用于有序区间)
--------------------------------------------------------------------------------------------------------------------------------------
描述:利用二分查找找到一个区间,区间里的所有值都等于给定值,返回的是一个pair,
分别存储区间的上界迭代器和下界迭代器
源码:
template <class ForwardIterator, c...
分类:
其他好文 时间:
2014-07-20 23:06:36
阅读次数:
263
nth_element
------------------------------------------------------------------------------
描述:重新排序,使得[nth,last)内没有任何一个元素小于[first,nth)内的元素,
但对于[first,nth)和[nth,last)两个子区间内的元素次序则无任何保证。
思路:
1.以 median-of-3-partition 将整个序列分割为更小的左、右子序列
2.如果 nth 迭代器落于左序列,就再对左子...
分类:
其他好文 时间:
2014-07-20 23:20:34
阅读次数:
279
iOS 8 应用构建细节挖掘 之 应用启动流程...
分类:
移动开发 时间:
2014-07-20 23:37:21
阅读次数:
310
归并排序是另一种运用分治法排序算法。与快速排序一样,它依赖于元素之间的比较来排序。但是,归并排序需要额外的存储空间来完成排序过程。
同样可以用分治法的思想将排序分为三个步骤。
分:将数据集等分为两半。治:分别在两个部分用递归的方式继续使用归并排序法。合:将分开的两个部分合并成一个有序的数据集。
归并排序与其他排序最大的同步在于,它的归并过程。这个过程就是将两个有序的数据集合并成一个有序的...
分类:
其他好文 时间:
2014-07-20 22:35:13
阅读次数:
283
inplace_merge(应用于有序区间)
--------------------------------------------------------------------
描述:如果两个连接在一起的序列[first, middle)和 [middle, last]都已排序,
那么 inplace_merge 可将它们结合成单一一个序列,并仍有序。
源码:
template
inline void inplace_merge(Bidi...
分类:
其他好文 时间:
2014-07-20 23:27:42
阅读次数:
368