PAT1019,1020,1021,1022解题思路与源码...
分类:
其他好文 时间:
2014-06-16 11:39:24
阅读次数:
259
题目
Given a sorted array of integers, find the starting and ending position of a given target value.
解题思路:
查找一个数出现的范围,给一个排好序的数组和一个数,找出这个数在数组中出现的范围。
这个题直接使用一次遍历就可以得到结果,这样的时间复杂度为O(n)。但是对于有序数组我们一般可以使用二分查找可以得到更好的O(logn)的时间复杂度。我们可以使用二分查找找到这个数第一次出现的位置和这个数最后一次出现的位...
分类:
其他好文 时间:
2014-06-15 16:19:16
阅读次数:
237
题目
Given a collection of integers that might contain duplicates, S, return all possible subsets.
原题链接(点我)
解题思路
这个题很subsets这个题一样,不过这里允许给出的集合中含有重复元素,对于这个条件之需要加一个判断条件就可以了,其余代码和Subsets都一样。
代码实现.......
分类:
其他好文 时间:
2014-06-15 08:28:53
阅读次数:
166
题目
Follow up for "Search in Rotated Sorted Array":
What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Write a function to determine if a given target is in the array.
原题链接(点我)
解题思路
这题和Search in Rotated Sorted Array问题类似,...
分类:
其他好文 时间:
2014-06-14 12:44:18
阅读次数:
266
题目
Given a set of distinct integers, S, return all possible subsets.
原题链接(点我)
解题思路
子集合问题。给一个集合 ,求出其所有的子集合。这个题也是个组合问题--老思路:递归加循环。
代码实现......
分类:
其他好文 时间:
2014-06-13 21:28:42
阅读次数:
252
又是中文题,大家都说是水题,但是说好的1A呢?
题目大意:
给出n*m的矩阵,当某个单元格有炮兵部队时它的上下左右两格(不包括斜着的方向)是这支部队的攻击范围。问在两支部队之间不可能相互攻击到的情况下,最多能部署多少炮兵部队。
解题思路:
状态压缩DP,DP[i][j][k]代表当第i行是第j种状态时,第i-1行是第k种状态时,布置炮兵的最大数量。状态可以预先处理出来,只有60种。...
分类:
其他好文 时间:
2014-06-13 21:26:41
阅读次数:
239
题目
A message containing letters from A-Z is being encoded to numbers using the following mapping:
原题链接(点我)
解题思路及代码;
解码方法数量问题。英文26个字母对应1到26,给一串数字,问翻译为字母有多少种方法?
这个题第一思路是想到使用组合排列的方法,穷举所有的可能。很好,写出如下代码...
但是提交后出来的结果是超时。
再想想,使用动态规划的方法来做。
对于串s[0...i]的解码数量应该和s[0.....
分类:
其他好文 时间:
2014-06-13 20:44:04
阅读次数:
292
原题地址:https://oj.leetcode.com/problems/divide-two-integers/题意:Divide
two integers without using multiplication, division and mod
operator.解题思路:不许用乘、除和求...
分类:
编程语言 时间:
2014-06-10 21:43:00
阅读次数:
267
题目:...
解题思路:
顺时针方向旋转数组90°。这个题也是个没啥意思的题,自己画画图,找找规律。就出来了。我举一个n=4的例子还说明下规律:
通过图可以看出A[0][0] = A[3][0],....。从这些中我们可以找到如下规律:
A[i][j] = A[n-1-j][i];
A[n-1-j][i] = A[n-1-i][n-1-j];
A[n-1-i][n-1-j] = A[j][n-1-i];
A[j][n-1-i] = A[i][j];(原来的A[i][j...
分类:
其他好文 时间:
2014-06-10 18:09:47
阅读次数:
281
解题思路:
爬楼梯:一次可以爬1阶或者2阶,问爬n阶楼梯有多少方法?
这是个典型的斐波拉切应用场景,我们下面来分析下:
对于1阶,只有 1 种方法, 记为f(1);
对于2阶,记为f(2):
最后一步只爬1阶,有 f(1);
最后一步一次爬2阶,即一步上来,这是1中方法;
综合下来 f(2) = f(1) +1 = 2;
对于3阶,记为f(3):
最有一步只爬1阶,有f(2)种方法
最后一步一次爬2阶,有f(1)种方法;
综合下来 f(3) = f...
分类:
其他好文 时间:
2014-06-10 15:01:48
阅读次数:
202