题目描述:给定一个整数数组,找到其中的两个数之和等于目标值,返回两个数的索引值index1和index2,保证index1 twoSum(vector &numbers, int target) { 2 vector result; 3 for(int i=0;i类型...
分类:
其他好文 时间:
2015-07-06 23:20:31
阅读次数:
121
给定一个整数数组,让你从该数组中找出最小的K个数
思路:
最简洁粗暴的方法就是将该数组进行排序,然后取最前面的K个数即可。但是,本题要求的只是求出最小的k个数即可,用排序可以但显然有点浪费,比如让求10000个整数数组中的最小的10个数,用排序的话平均时间复杂度差为Nlog(N)。
于是想到了,用堆来实现,但是自己实现又太麻烦,想到了java里面的TreeSet,先将K个数放入TreeSet中,由于TreeSet会对里面的元素进行排序,所以在TreeSet中的元素是有序的,以后没插入一个元素,将TreeSe...
分类:
其他好文 时间:
2015-07-01 12:24:55
阅读次数:
153
给定一个整数数组,找出两个不重叠的子数组A和B,使两个子数组和的差的绝对值|SUM(A) - SUM(B)|最大。
返回这个最大的差值。
您在真实的面试中是否遇到过这个题?
Yes
样例
给出数组[1, 2, -3, 1],返回 6
注意
子数组最少包含一个数
挑战
时间复杂度为O(n),空间复杂度为O(n)
标签 ...
分类:
编程语言 时间:
2015-06-26 21:15:29
阅读次数:
953
//题目:
//给定一个整数数组与一个整数k,当且存在两个不同的下标i和j满足nums[i] = nums[j]并且| i - j | <= k时返回true,否则返回false。
#include
#include
#include
//注意: 当K >= numsSize的时候
//愤怒的解法1300ms 哭晕在厕所
bool...
分类:
其他好文 时间:
2015-06-25 15:38:51
阅读次数:
106
1. 问题描述 给定一个整数数组nums[],查找是否存在两个下标i和j,满足numsi=numsjnums_i = nums_j 且|i?j|≤k|i-j| \le k。2. 思路与方法 这个问题比Contains Duplicate III要简单一些,思路方面可以参考上一篇文章Contains Duplicate III。采用“滑动窗口”+哈希的方法。不同的是,在窗口范围内只要找到满足has...
分类:
其他好文 时间:
2015-06-25 09:04:22
阅读次数:
198
1. 问题描述 给定一个整数数组nums[],查找是否存在两个下标i和j,满足|numsi?numsj|≤t|nums_i-nums_j| \le t 且 |i?j|≤k|i-j| \le k。2. 方法与思路 总得思路就是:“滑动窗口”+unordered_map。
推理过程如下:
|numsi?numsj|≤t?|numsi/t?numsj/t|≤1|nums_i-nums_j|...
分类:
其他好文 时间:
2015-06-24 22:41:57
阅读次数:
328
(4)模版方法模式
定义:定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。
类型:行为类模式
类图:
事实上,模版方法是编程中一个经常用到的模式。先来看一个例子,某日,程序员A拿到一个任务:给定一个整数数组,把数组中的数由小到大排序,然后把排序之后的结果打印出来。经过分析之后,这个任务大体上可分为两部分,排序和打...
分类:
其他好文 时间:
2015-06-15 09:12:44
阅读次数:
94
给定一个整数数组,在该数组中,寻找三个数,分别代表三角形三条边的长度,问,可以寻找到多少组这样的三个数来组成三角形?
样例
例如,给定数组 S = {3,4,6,7},返回 3
其中我们可以找到的三个三角形为:
{3,4,6}
{3,6,7}
{4,6,7}
给定数组 S = {4,4,4,4},
返回 3
其中我们可以找到的三个三角形为:
{4(1),4(2),4(3...
分类:
其他好文 时间:
2015-05-21 19:35:57
阅读次数:
118
给定一个整数数组,找到一个和最接近于零的子数组。返回第一个和最有一个指数。你的代码应该返回满足要求的子数组的起始位置和结束位置
样例
给出[-3, 1, 1, -3, 5],返回[0, 2],[1, 3], [1,
1], [2, 2] 或者[0, 4]
挑战
O(nlogn)的时间复杂度
分析:首先O(n^2)的算法很好想,直接枚举起点就行,看到...
分类:
编程语言 时间:
2015-05-18 12:52:05
阅读次数:
490
题目描述给定一个整数数组a[0,...,n-1],求数组中第k小数输入描述首先输入数组长度n和k,其中1 2 #include 3 #include 4 using namespace std; 5 6 int main() 7 { 8 int n, k; 9 cin >> n...
分类:
编程语言 时间:
2015-05-02 16:21:06
阅读次数:
213