题目: 思路: 如果数组长度为N,考虑使用N+1个桶,每个桶能放入数的范围固定,将数组中数据依次放入桶中,那么肯定有一个桶是空桶(因为数一共有N个,而桶有N+1个)。 最大差值就出现在相邻两个不为空的桶之间,具体为当前铜的最小值减去前一个桶的最大值。 需要注意的是:如何对于每个数,计算它应该放入的桶 ...
分类:
编程语言 时间:
2018-07-12 13:01:46
阅读次数:
115
[抄题]: Given m arrays, and each array is sorted in ascending order. Now you can pick up two integers from two different arrays (each array picks one) a ...
分类:
编程语言 时间:
2018-04-23 00:12:44
阅读次数:
193
标题可能比较绕口,简单点说就是给你一个无序数列A={a1,a2,a3……an},如果你把这个序列排序后变成序列B,求序列B中相邻两个元素之间相差数值的最大值。 注意:序列A的元素的大小在[1,2^31-1]之间 首先,因为要O(n)查找,你不能对序列A进行排序。 不过我们有显而易见的一个结论那就是最 ...
分类:
编程语言 时间:
2018-04-01 18:49:32
阅读次数:
211
1、冒泡排序 2、快速排序 3、二路归并 字符串操作 1、判断回文字符串 2、翻转字符串 思路一:反向遍历字符串 思路二:转化成array操作 3、生成指定长度随机字符串 4、统计字符串中次数最多字母 数组操作 1、数组去重 2、数组中最大差值 其他常见算法 1、阶乘 非递归实现 递归实现 2、生成 ...
分类:
编程语言 时间:
2017-12-25 11:35:30
阅读次数:
141
题目描述: 求无序数组中任意两个元素的最大差值,以及存在最大差值的组别数. 输入: 输入包含两行,第一行输入一个整数n;第二行n个正整数,用空格隔开. 输出: 输出为一行,包含最大差值,以及存在组别数. 样例输入: 4 4 1 2 1 输出: 3 2 一种实现代码如下(Java版): ...
分类:
编程语言 时间:
2017-12-07 00:38:52
阅读次数:
419
这道题为简单题 题目: 思路: 这道题我做得有点久了,今天才看见没有写进来,这个挺简单的,min保存最小值,cha最大差值,遍历列表,如果该元素大于min,就cha就等于cha和i-min之间的最大值,如果该元素小于min,那么min就等于i,最后返回cha 代码: ...
分类:
其他好文 时间:
2017-09-22 00:47:05
阅读次数:
96
题目描述: 解法思路: 本题其实是滑动窗口的变形。主体思路为: 1.从第一个元素开始依次向后遍历,同时维护两个窗口(由于要同时操作窗口的头部和尾部,故采用双端队列): 最大值窗口(递减),头部永远存最大值 最小值窗口(递增),头部永远存最小值 2.比较两个窗口的头部元素差值,若差值大于阈值,即可跳出 ...
分类:
编程语言 时间:
2017-08-17 15:17:13
阅读次数:
350
判断一个单词是否是回文? 去掉一组整型数组重复的值 利用一个空对象和空数组,遍历数组元素,每次判断对象中是否存在这个值,如果不存在,将obj[x]设置为1,将这个值push到空数组 ES6的方法 统计一个字符串出现最多的字母 借助临时变量,进行两个整数的交换 找出下列正数组的最大差值比如: 输入 [ ...
分类:
编程语言 时间:
2017-08-16 23:12:05
阅读次数:
281
题目链接:http://poj.org/problem?id=1678 动态博弈。用dp[i]来表示如果先行者首先选择第i个数字的话能取得的最大差值。由于每次选择的数字一定比上一次选择的数字大,所以先对数组进行排序。然后对于每个数字,如果先行者首先选择这个数字的话,dp[i] 初始化的值为num[i ...
分类:
其他好文 时间:
2017-06-26 17:15:25
阅读次数:
236
有一个整形数组A,请设计一个复杂度为O(n)的算法,算出排序后相邻两数的最大差值。 给定一个int数组A和A的大小n,请返回最大的差值。保证数组元素多于1个。 测试样例: ...
分类:
编程语言 时间:
2017-04-06 01:33:42
阅读次数:
163