scala lc

Q1

import scala.collection.mutable.ArrayBuffer
object Solution {
def twoSum(nums: Array[Int], target: Int): Array[Int] = {
var ans: Array[Int] = new ArrayInt
var vec: ArrayBuffer[IndexAndNum]=new ArrayBuffer[IndexAndNum]
for (i <- nums.indices){
vec.addOne(new IndexAndNum(i,nums(i)))
}
vec = vec.sortWith((a, b) => a.num < b.num)
var begin:Int =0
var end:Int =vec.size-1
while(begin<end){
if (vec(begin).num+vec(end).num==target){
ans(0)=vec(begin).index
ans(1)=vec(end).index
return ans
}
else if (vec(begin).num+vec(end).num<target){
begin+=1
}
else{
end-=1
}
}
ans
}
}
class IndexAndNum(var a: Int, var b: Int) {

var index: Int = a
var num: Int = b

override def toString: String = {
"num=" + num + " index=" + index + "\n"
}
}

全部评论

相关推荐

工科女的日常:真诚建议:别再用这种花哨的模板,可以看看我发的那个零经验找实习发帖子
点赞 评论 收藏
分享
漂亮的海豚在炒股:把西电加粗
点赞 评论 收藏
分享
我将逐步学习姐妹的语言艺术
一片特立独行的面包:这攻击力
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务