gpt4 book ai didi

scala - 如何获得List元素之间的最小间距?

转载 作者:行者123 更新时间:2023-12-04 13:17:26 27 4
gpt4 key购买 nike

例如,假设我有一个排序列表

val sorted = List(1、5、15、37、39、42、50)

最小间隙为(39-37)= 2。我将如何获得此结果?我一直在看foldLeft,我觉得它和我需要的东西相似,但不太正确

最佳答案

val sorted = List(1, 5, 15, 37, 39, 42, 50)
(sorted.tail,sorted).zipped.map(_-_).min
//res2: Int = 2

[编辑]

您也可以使用折叠:
sorted.tail.foldLeft((sorted.head,Int.MaxValue))((x,y) => (y, math.min(y-x._1,x._2)))._2

关于scala - 如何获得List元素之间的最小间距?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8088740/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com