又是淘宝面试的问题,一个int数组A[]比另一个int数组B[]多出个个数,问这个数的值

之前被淘宝面试的时候被问道这题,说数组A[]比数组B[]多出一个值,除多出的数外,这两个数组都包含了相同的元素,但顺序不同。

当时糊里糊涂的回答说

1、对两个数组先排序然后再逐个比较,

2、利用for循环对A[]中的值进行逐个比较,若在B[]中能找不到对应值则这个就是多出的数。

回答过后感觉这两种方法应该不是面试官要的答案。突然昨天晚上突然虎躯一震、灵光一闪想到一个方法觉得应该是对的,就是求多出的数只需要将数组A[]的元素全部相加的值减去数组B[]元素全部相加的值(Sum(A[])-Sum(B[]))。这样其实就可以得到了,在ACM中属于算法简单题,怪就怪当时没想到,纠结啊~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值