Как повысить производительность кода с 60% - PullRequest
0 голосов
/ 01 октября 2018

Я решаю простую задачу на одном из сайтов, посвященных проблемам кодирования, где мне нужно найти недостающий элемент из массива.

Проблема состоит в том, что у вас есть an input array from 1 to N+1 and you have to find the missing element from that array.

For example, given array A such that:

  A[0] = 2
  A[1] = 3
  A[2] = 1
  A[3] = 5
the function should return 4, as it is the missing element.

Для решения этой проблемы я написал простую функцию, которая вычисляет результат

def sol(a: Array[Int]): Int = {
  ((a.length+1)*(a.length+2)/2)-a.sum
}

Однако при отправке решенияЯ получил правильность решения как 100%, но был шокирован, увидев результаты производительности на 60%.Кто-нибудь может указать на какую-либо часть этого однострочного кода, которая может быть оптимизирована, или есть какой-либо другой способ достижения 100% производительности для этого?

Примечание: я ищу код функционального стиля.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...