首页 > 代码库 > Maximum Gap

Maximum Gap

Given an unsorted array, find the maximum difference between the successive elements in its sorted form.

Try to solve it in linear time/space.

Return 0 if the array contains less than 2 elements.

You may assume all elements in the array are non-negative integers and fit in the 32-bit signed integer range.

 

解法1: 时间O(nlogn), 空间O(1). 排序在比较。

 1 public class Solution { 2     public int maximumGap(int[] num) { 3         if(num == null || num.length < 2) return 0; 4         Arrays.sort(num); 5         int result = 0; 6         for(int i = 0; i < num.length - 1; i ++){ 7             result = Math.max(result, num[i + 1] - num[i]); 8         } 9         return result;10     }11 }

 

Maximum Gap