然后定义两个iterator,分别指向两个vector的头部
vector<int>first
vector<int>second
vector<int>::iterator poiFir
vector<int>::iterator poiSec
poiFir=first.begin()
poiSec=second.begin()
然后循环直到poiFir指向first的尾部或poiSec指向second的尾部
每次循环的内部:
判断*poiFir和*poiSec的大小
(1)若相等,则为相同的元素,记录此值(可以另建一个vector<int>save用于存放相等的值,save.push_back(*poiFir)),再将poiFir++;poiSec++;
(2)若*poiFir大于*poiSec的值,则将poiSec++;
(3)若*poiFir小于*poiSec的值,则将poiFir++;
循环结束后,save中存储的值即为两个vector中相等的值
时间效率为两个vector中元素个数的和
#在1到80里随机抽取100个数,可重复
x
<-
sample(1:80,
100,
replace
=
T)
#
看看有多少不同的元素,
unique(x)把x中出现过的元素提取出来,
length()看看有多少个
length(unique(x))
[1]
52