Sur*_*rya 13 functional-programming scala list
说我有一个清单 val list = List(34, 11, 98, 56, 43).
现在我如何找到列表中最小元素的索引(例如在这种情况下为1)?
Dan*_*ral 24
在Scala 2.8上:
List(34, 11, 98, 56, 43).zipWithIndex.min._2
Run Code Online (Sandbox Code Playgroud)
空列表没有最小值.只有一个元素的列表将该元素作为其最小值.对于所有其他列表,最小值是该列表的第一个元素或列表其余部分的最小值,具体取决于哪个更大.
因此,为了找到索引,这变为:对于长度为1的列表,最小值的索引为0.如果列表具有多个元素并且尾部的最小值大于头部,则它也是0.如果头部是大于索引是尾部最小值的索引加1.