2016-10-13 00:16:48 点击量:9 标签: 收藏本文
其实用数组的sort方法或Math.max方法不难求得数组最大两个元素的和,但有人觉得这样做性能不高。那我们就不使用这两种ActionScript方法,而通过比较遍历数组元素来实现。看下面代码:
- function sumTwoLargest(arr:Array):int
- {
- var count:int = arr.length;
- var largest:int;
- var secondLargest:int;
- var tmp:int;
- for (var i = 0; i < count; i++)
- {
- tmp = arr[i];
- if (tmp > largest )
- {
- secondLargest = largest;
- largest = tmp;
- }
- else if (tmp > secondLargest)
- {
- secondLargest = tmp;
- }
- }
- return largest + secondLargest;
- }
- var my_arr:Array = [1,16,2,18,14,7];
- trace(sumTwoLargest(my_arr));