采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
return vector(res,res+2)? 这句语法看不懂?可以解释一下吗?
res 是 int[] 类型,有两个元素,res就是这个数组的头,res + 2是这个数组的尾。
vector<int>的一个构造函数,可以传入数组的头和尾,构造一个vector<int>,也就是将int[]转成了vector<int>。
对于支持 C++11 标准的编译器来说,直接这样写也可以:
for(int i = 0 ; i < numbers.size() ; i ++) for(int j = i+1 ; j < numbers.size() ; j ++) if(numbers[i] + numbers[j] == target) return {i+1, j+1};
继续加油!:)
若采用return vector<int>(res,res+2)这个语句,可以认为是返回一个vector<int>数组吗?如果是这样,那不是返回了三个数值了吗?答案只需要返回两个数值啊?
返回了两个。C++的区间都是前闭后开的。res + 2不包含。
第一次听c++区间这个概念。我学艺不精啊! 谢谢老师,明白了
登录后可查看更多问答,登录/注册
课程配套大量BAT面试真题,高频算法题解析,强化训练
1.1k 13
1.1k 12
653 11
1.5k 10
1.2k 10