本文共 970 字,大约阅读时间需要 3 分钟。
export default (arr) => { // 如果数组长度小于2返回0 if (arr.length < 2) { return 0 } // 排序 arr.sort() // 用它来保存相邻元素的最大差值 let max = 0 for (let i = 0, len = arr.length - 1, tmp; i < len; i++) { tmp = arr[i + 1] - arr[i] if (tmp > max) { max = tmp } } return max}export default (arr) => { if (arr.length < 2) { return 0 } let max = 0 let len = arr.length - 1 let space for (let i = len, tmp; i > 0; i--) { for (let j = 0; j < i; j++) { tmp = arr[j] if (tmp > arr[j + 1]) { arr[j] = arr[j + 1] arr[j + 1] = tmp } } if (i < len) { space = arr[i + 1] - arr[i] if (space > max) { max = space } } } return Math.max(max, arr[1] - arr[0])}
import sort from '../../code/sort/lesson3'test('sort:input2', () => { expect(sort([3, 6, 9, 1])).toBe(3)})test('sort:input3', () => { expect(sort([10])).toBe(0)})test('sort:input4', () => { expect(sort([13, 16, 19, 1])).toBe(12) // [1,13,16,19]})
转载地址:http://zvvm.baihongyu.com/