博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Lintcode: Subarray Sum Closest
阅读量:4935 次
发布时间:2019-06-11

本文共 1524 字,大约阅读时间需要 5 分钟。

Given an integer array, find a subarray with sum closest to zero. Return the indexes of the first number and last number.Have you met this question in a real interview? YesExampleGiven [-3, 1, 1, -3, 5], return [0, 2], [1, 3], [1, 1], [2, 2] or [0, 4].ChallengeO(nlogn) time

Analysis:

s[i+1] = nums[0]+....nums[i], also record the index i into s[i+1]. Sort array s, and the minimum difference between two consecutive element, is the the subarray.

1 class Element implements Comparable
{ 2 int index; 3 int value; 4 public Element(int index, int value) { 5 this.index = index; 6 this.value = value; 7 } 8 9 public int compareTo(Element other) {10 return this.value - other.value;11 }12 13 public int getIndex() {14 return index;15 }16 17 public int getValue() {18 return value;19 }20 } 21 22 23 24 25 public class Solution {26 /**27 * @param nums: A list of integers28 * @return: A list of integers includes the index of the first number 29 * and the index of the last number30 */31 32 public int[] subarraySumClosest(int[] nums) {33 // write your code here34 int[] res = new int[2];35 Element[] sums = new Element[nums.length+1];36 sums[0] = new Element(-1, 0);37 int sum = 0;38 for (int i=0; i

 

转载于:https://www.cnblogs.com/EdwardLiu/p/5101798.html

你可能感兴趣的文章
PHP 当前时间秒数+数值,然后再转换成时间。
查看>>
数据交互 axios 的使用
查看>>
bootloader,kernel,initrc
查看>>
Java中jshell脚本
查看>>
performSelector的方法
查看>>
redis
查看>>
BZOJ1645 [Usaco2007 Open]City Horizon 城市地平线
查看>>
配置IIS
查看>>
单例模式详解
查看>>
电商项目(下)
查看>>
[NOIP2015] 子串
查看>>
NSSet和NSArray区别与方法总结
查看>>
Python列表 元组 字典 集合
查看>>
foreach遍历数组、数组的转置与方阵的迹
查看>>
Still unable to dial persistent://blog.csdn.net:80 after 3 attempts
查看>>
HTML超文本标记语言(九)——表单输入类型
查看>>
基于busybox制作mini2440根文件系统及使用nfs挂载
查看>>
Docker系列之入门篇
查看>>
Http协议详解
查看>>
【译文】可用性测试之发声思考
查看>>