Получить n самых длинных строк из массива
Мне дан массив строк и n, который указывает, сколько самых длинных строк должно быть возвращено. Я имею в виду вот что
longStr(["a", "ab", "abc", "abcd", "abcde"], 2)-> 'abcde abcd'
Таким образом, если n равно n, он должен возвращать только 1 строку, которая является самой длинной в массиве, если n равно 2, он должен возвращать самую длинную строку и ту, которая является второй по длине.
Что я уже пробовал:
function longest (n,v) { var val = "" for(var i = 0; i < n.length; i++){ var length = n[0].length; if(n[i].length > length){val = n[i] + " " +n[i]; delete n[i]} } return val } console.log(longest( ["a", "ab", "abc", "abcd", "abcde"], 2));
Я пытался найти самую длинную строку, а затем удалить ее, а затем повторить еще раз и добавить, но застрял. Не лучше ли здесь использовать рекурсию?
Afzaal Ahmad Zeeshan
Это вопрос где-то из кодовых боев? Раньше они показывали такие вопросы, совершенно бессмысленные.