def sortAndCountInv[T](vec: Vector[T]): (Int, Vector[T]) = {
val n = vec.length
if (n == 1) {
(0, vec)
}
else {
val (left, right) = vec.splitAt(n / 2)
val (leftInversions, sortedLeft) = sortAndCountInv(left)
val (rightInversions, sortedRight) = sortAndCountInv(right)
val (splitInversions, sortedArray) = countSplitInvAndMerge(left, right)
(leftInversions + rightInversions + splitInversions, sortedArray)
}
}
此代码用于计算向量中的反转次数,
当我尝试编译它时,Scala IDE for Eclipse给出了以下错误:illegal start of simple expression
,对于行val (left, right) ...
为什么会这样?
答案 0 :(得分:0)
缺少一个最后的结束支撑。通常,当代码不正确时,IDE中会出现“陈旧”错误;如果有疑问,最好只查看命令行编译中的第一个错误(maven或类似)。
答案 1 :(得分:0)
如果它适用于REPL,这将是一个IDE错误。尝试使用Scala插件的IDEA社区。我发现它非常好,在理解一些复杂的结构时仍然存在一些问题。