Loading...
Losko avatar Losko 69 Точки

[JavaScript Fundamentals][Lab: Arrays and Matrices]: 07. Smallest Two Numbers

Здравейте колеги.
Имам проблем с тази задача., опитах да я реша по няколко начина, но трети и четвърти тест все гърмят.
Моето решение  

Опитах всякакви тестове за които се сетих, но без успех.

Тагове:
0
JavaScript Fundamentals 06/06/2017 11:08:29
S.Georgiev91 avatar S.Georgiev91 37 Точки

Eто как съм го решил аз : 

function smallestTwo(arr) {
    arr.sort((a, b) => a-b);
    let result = arr.slice(0, 2);
    return result.join(' ');
}

С две думи - сортираш се масива и взимаш само първите два елемента, не е нужно да сравняваш всичко. 

 

1
Losko avatar Losko 69 Точки

Ок, но така ако имаме две еднакви числа, ще върнем тях? Нали така ?
Ппри [1, 2, 1, 3 ,4...] : Това би върнало след сортирането  (1 1). ?

0
S.Georgiev91 avatar S.Georgiev91 37 Точки

Съгласен съм, но в задача не посочено двете най- малки и различни числа, така че [1,1] си е верен отговор. 

0
JivkoJelev avatar JivkoJelev 235 Точки

Защо правиш проверка и за двете най-малки числа , като можеш да проверяваш един път? 
function solve(arr){   

 arr = arr.sort(function (a,b) {return a - b;})
    return arr[0] + " " + arr[1];
}

Ето ти един вариант в който спестяваш доста код.

2
04/06/2017 14:35:33
Kiril98 avatar Kiril98 66 Точки

Здравей!

В първият ти вариант пропускаш факта, че може да ти се даде масив от еднакви числа и съответно накрая small променливата

ти става Number.MAX_SAFE_INTEGER. Другото което е че може да ти се подаде масив от един елемент и е преопръчително да се ползва slice функцията както колегата е написал по-нагоре.

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.