这是我遇到的一道面试题,当时拿到这个题目,就在想着分情况,自己把自己给分蒙了,,,现在来整理下。
1、先排除不正常的数组(数组中不足三个数)和数组中只有三个元素;
2、三个数乘机最大,无非只有两种情况要么是最大的三个数,要么就是两个最小的负数和一个最大的正数,把这两种情况的乘积对比下就知道答案了。
贴上代码:
方法1:是我自己写的,即先进行排序,然后直接取最大三个数和最小的两个数:
方法2:这个是在网上看到的,即循环数组,拿最大的三个数和最小的两个数:
这是我遇到的一道面试题,当时拿到这个题目,就在想着分情况,自己把自己给分蒙了,,,现在来整理下。
1、先排除不正常的数组(数组中不足三个数)和数组中只有三个元素;
2、三个数乘机最大,无非只有两种情况要么是最大的三个数,要么就是两个最小的负数和一个最大的正数,把这两种情况的乘积对比下就知道答案了。
贴上代码:
方法1:是我自己写的,即先进行排序,然后直接取最大三个数和最小的两个数:
方法2:这个是在网上看到的,即循环数组,拿最大的三个数和最小的两个数: