
js版数据结构与算法—5.6最大区间
发布日期:2021-05-06 19:38:07
浏览次数:13
分类:原创文章
本文共 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]})
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年03月30日 00时01分45秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
利用JavaCV实现将视频以帧方式抽取
2019-03-04
ListView 与 RecyclerView 简单对比
2019-03-04
Marvell 98DX51xx / 98DX81xx 系列交换芯片 内部初始化
2019-03-04
初次使用 Supervisor 管理 Laravel 队列进程
2019-03-04
线程的退出
2019-03-04
2-MySQL性能性能优化实战
2019-03-04
M - 简单字符串排序
2019-03-04
SQL case when写法
2019-03-04
Mybatis使用collection导致分页总数过多
2019-03-04
常用运放电路分析
2019-03-04
CUDA编成:从GPU的物理体系结构到逻辑结构
2019-03-04
安全工具大全(持续补充中)
2019-03-04
使用docker搭建redis-cluster集群
2019-03-04
Java多线程3种实现方式
2019-03-04
PyQt5按键创建的几种方法
2019-03-04
JNI系列(一)JNI简介
2019-03-04
Maven学习笔记(二)-仓库
2019-03-04
CentOS7报: ping: unknown host www.baidu.com
2019-03-04
Maven学习笔记(五)-使用Nexus搭建Maven私服
2019-03-04