447超时问题

来源:4-6 灵活选择键值 Number of Boomerangs

宝慕林1412387

2020-07-11

int dis(const vector<int>& pa,const vector<int>& pb){
        return (pa[0] - pb[0]) * (pa[0] - pb[0]) +
               (pa[1] - pb[1]) * (pa[1] - pb[1]);
    }

老师请问为什么这段话用const引用传值没问题,但是用普通传值就会超时呢?

写回答

1回答

liuyubobobo

2020-07-11

如果不使用 &,每次传参数,就会把整个 vector<int> 复制一遍,时间是 O(n) 的。传引用,时间是 O(1) 的。


继续加油!:)

1
0

玩转算法面试-- Leetcode真题分门别类讲解

课程配套大量BAT面试真题,高频算法题解析,强化训练

7410 学习 · 1150 问题

查看课程