标准头文件包括: 一、标准定义() 文件里包含了标准库的一些常用定义,无论我们包含哪个标准头文件,都会被自动包含进来。 这个文件里定义: l类型size_t(sizeof运算符的结果类型,是某个无符号整型); l类型ptrdiff_t(两个指针相减运算的结果类型,是某个有符号整型);l类型wchar...
分类:
编程语言 时间:
2014-10-14 22:20:39
阅读次数:
277
函数的调用操作是从一块代码到另一块代码之间的双向数据传递和执行控制。数据传递:函数参数和返回值。CPU的程序实现使用栈来支持函数调用操作。栈用来传递函数参数、存储返回信息、临时保存寄存器原有值以及存储局部数据。单个函数调用操作所使用的栈部分称为栈帧。栈帧结构的两端由两个指针指定。ebp用作栈帧的指针...
分类:
其他好文 时间:
2014-10-12 10:28:37
阅读次数:
186
题目链接:http://poj.org/problem?id=1936思路: 字符串子序列查找问题,设置两个指针,一个指向子序列,另一个指向待查找的序列,查找个字符串一次即可判断。 算法时间复杂度O(N)。代码:#include #include using namespace std;#def.....
分类:
其他好文 时间:
2014-10-09 14:16:23
阅读次数:
187
这道题目的意思是,在一个数组中寻找两个数,使这两个数的和等于给定的数(找到任意一组就可以了)。 题目读完之后,感觉这道题目还是很简单的,就是遍历数组呗,走两遍,即可以在O(n2)时间复杂度内解决这个问题。不过,仔细想想之后,复杂度还是可以降低的。 首先,我们可以对数组进行排序,这样,得到的数组就是一个有序数组(假设数组是递增的),那么,我们可以利用两个指针,一个指针指向数组的第...
分类:
其他好文 时间:
2014-10-09 03:39:07
阅读次数:
150
第一种思路是用一个vector存所有的Node*
之后再用两个指针将链表拼接出来
void reorderList(ListNode *head) {
vector content;
ListNode * cur = head;
while (cur)
{
content.push_back(cur...
分类:
其他好文 时间:
2014-10-08 03:15:24
阅读次数:
277
题目地址:Ural 1146
这题是求最大子矩阵和。方法是将二维转化一维。
首先用n*n的方法来确定矩阵的列。需要先进行预处理,只对每行来说,转化成一维的前缀和,这样对列的确定只需要前后两个指针来确定,只需要用前缀和相减即可得到。前后两个指针用n*n的枚举。
确定好了哪几列,那么再确定行的时候就转化成了一维的最大连续子序列的和。再来一次O(n)的枚举就可以。
这样,总复杂就变成了O(n^3...
分类:
其他好文 时间:
2014-10-03 22:40:35
阅读次数:
205
序列前9项为:0, 1, 1, 2, 3, 5, 8, 13, 21 要注意非递归的话就是那一个变量帮助存储当前下一项的值,然后依次挪动两个指针往下即可注意如果n太大 会溢出 1publicstaticlongfib(intn){2if(n<=1)3returnn;4else5returnfib(n...
分类:
其他好文 时间:
2014-09-30 04:17:32
阅读次数:
145
题目地址:HDU 5056
我晕啊。。当时绝壁脑残了。。。当时想到的方法是完全正确的。。但是在脑算第二个样例的时候,居然一直把前三个abc当成了9种。。。于是后面的三个abc每个都要递增2,而不是我想的方法中的递增3。。。于是一直没写代码。。。
言归正传。。
这题的思路就是窗口滑动,两个指针,让指针内的始终保持每个字母的数量少于k个。然后递推过去。然后因为每次右指针往右移动一个的时候,就相当...
分类:
其他好文 时间:
2014-09-29 14:14:11
阅读次数:
187
1 ngx_queue_t简介
ngx_queue_t是nginx提供的一个轻量级的双向链表容器,它不负责存储数据,既不提供数据的内存分配,它只有两个指针负责把数据链入链表,它跟stl提供的queue不同,stl提供的queue帮助用户存储数据,用户只需要相容器里添加数据即可,而ngx_queue_t,用户必须自己提供存储数据的内存,并且必须定义一种数据结构把ngx_queue_t包含在其中...
分类:
其他好文 时间:
2014-09-29 00:05:46
阅读次数:
159