题目:给定一个数组和滑动窗口的大小,请找出所有滑动窗口里的最大值。
例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,它们的最大值分别为{4,4,6,6,6,5}。
滑动窗口这个概念在写过网络编程的人都应该是不陌生,主要是用来进行流控的。利用接收方剩下的缓冲数据区的大小来控制发送端的发送速度,避免发送端发送过快,导致网络拥塞及其他故障问题。...
分类:
其他好文 时间:
2016-06-30 12:50:54
阅读次数:
145
复杂链表的复制 题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点)。 思路 分三步(分而治之) 代码 ...
分类:
其他好文 时间:
2016-06-29 22:09:35
阅读次数:
160
二叉树中和为某一值的路径 题目描述 输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。 思路 代码 ...
分类:
其他好文 时间:
2016-06-29 20:43:33
阅读次数:
200
题目:在一个长度为n的数组里所有数字都在0到n-1的范围里。数组中某些数字是重复的,但是不知道有几个数字重复了,也不知道每个数字重复几次。请找出数组中任意一个重复的数字。例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是重复的数字2或者3.
分析:其实这个题因为它的限制太多,这样是这个题失去了泛型,比如里面的数字的范围确定在0到n-1内,还有任意意对即可,不能对任...
分类:
编程语言 时间:
2016-06-29 11:30:29
阅读次数:
166
题目:请实现一个函数用来匹配包括’.’和’‘的正则表达式。模式中的字符’.’表示任意一个字符,而’‘表示它前面的字符可以出现任意次(包含0次)。在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串”aaa”与模式”a.a”和”ab*ac*a”匹配,但是与”aa.a”和”ab*a”均不匹配。
分析;常规中,如果是普通的两个字符串,那很简单,我们直接进行对比就可以了,这里又是要求匹配是...
分类:
其他好文 时间:
2016-06-29 11:28:53
阅读次数:
133
题目:给定一个数组A[0,1,2...N-1],请构建一个数组B[0,1,2,...N-1],使B中的元素B[i]=A[0]*A[1]*...*A[i-1]*a[i+1]*...*a[n-1],不能使用除法。
解决思路:通过正反两次来求B[i];
正着:B[i]=A[0]*...A[i-1];
反着:temp = B[N]*...B[i+1];
...
分类:
编程语言 时间:
2016-06-29 11:28:46
阅读次数:
197
题目:请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。
此题和[35]中找字符串中第一次出现一次的字符是类似的。所以详细过程这里不再赘述。
方案一:顺序扫描。时间复杂度O(N*N)+空间复杂度O(N)。顺序扫描后,记录每一个...
分类:
其他好文 时间:
2016-06-29 11:28:19
阅读次数:
105
题目:请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。
例如,字符串“+100”,“5e2”,“-123”,“3.1416”及”-1E-16”都表示数值,但“12e”,”1a3.14”,”1.2.3”,”+-5”及“12e+5.4”都不是。
分析:这个题主要是应用数字的表示通式来解决:表示一个数字的通式为:
[sign]in...
分类:
其他好文 时间:
2016-06-29 11:28:00
阅读次数:
157
题目:在一个排序的链表中,如何删除重复的结点?
例如,在图a中重复结点被删除之后,链表如图b所示。
方案:这个题应该说是比较简单的,不在赘述,主要利用三个指针,就可以解决这个问题。
具体实现代码:
#include
using namespace std;
struct ListNode
{
int data;
ListNode *next;
};
ListNode *pHe...
分类:
其他好文 时间:
2016-06-29 11:24:21
阅读次数:
215
抽象建模能力
计算机只是一种工具,是为我们服务所驱使的工具,我们不能一头扎入这个编程的海洋出不来甚至迷失了方向。它的作用是帮助我们解决实际生活中的问题。程序员的工作就是把各种现实的问题抽象成数学模型并用计算机的编程语言表达出来,所以我们应该培养自己从日常生活中抽取提炼出问题并建立相应的数学模型,找到问题的规律并解决问题的能力。
建模的第一步:从具体问题中抽象选择合适的数据结构来表...
分类:
其他好文 时间:
2016-06-29 11:23:03
阅读次数:
163