JavaScript İle Algoritmalar 42 - Largest Pair CoderByte Challange En Büyük 2 Basamaklı Sayıyı Bulma

preview_player
Показать описание
#JavaScript
#Algorithms
#Algoritmalar
#Uygulamalı Algoritmalar
#Algoritma Örnekleri
#Coderbyte Challanges
#Largest Pair
#Bootcamp Technical Interview Exercises
#JavaScript Algoritmalar ve Sorular
#JavaScript Yeni Başlayanlar
#JavaScript Algorithms
#JavaScript Algoritmalar

#parseInt() Method
#toString() Method
#Math.Max() Static Function
#Math.Min() Static Function
#Array Spread Operators
#Default Values to JavaScript Parameters

NOT: Eğer fonksiyonların import ve export edilmesi ile ilgili bir sorunuz olursa, ilk videomuzda bu
işlemlerin nasıl ve neden yapıldığıyla alakalı olarak açıklamalarımı izleyebilirsiniz.

Bu videoda Coderbyte Sitesinde kolay olarak nitelendirilmiş olan "Largest Pair" sorusunu işledik.

Not: Arkadaşlar videonun girişinde tekerrür eden sayılar olup olmadığını bilmediğimizi söylemiştim
ancak parametrede zaten tekerrür eden sayılar varmış, söylediklerimi duymamazlıktan gelin lütfen.

0:00 Giriş ve Sorunun Açıklaması
2:26 Verilen Parametrenin 2 Basamaklı Olma Durumu
9:56 Basamak Sayısı 2'den Fazla Olan Sayılarda Çözüm
21:52 Çözümün Kontrolü
23:30 Teşekkürler

Video ile ilgili soru ve önerileriniz olursa lütfen yorumlar kısmına mesajınızı bırakın.

Kullandığım metotlar ile alakalı kaynakları aşağıda paylaşıyorum.

Herkese Kolay Gelsin,
Görüşmek Dileğiyle...
Рекомендации по теме
Комментарии
Автор

function largestPair(num) {
const strNum = num.toString();
const arr = strNum
.split("")
.map(Number)
.sort((a, b) => b - a);
const fs = arr[0];
const sc = arr.slice(1).find((num) => num % 2 === 0);
const result = sc ? fs * 10 + sc : arr[1] * 10 + fs;

return result % 2 === 0 ? result : -1;
}

frontenddeveloper
Автор

export const largestPair = (num) => {
let numArr = num.toString().split("")
console.log(numArr);
if(numArr.length === 1){
return console.log('sayı iki basamaklı değil');
}


let pushArr = [] //oluşabilecek bütün kombinasyonlar var
for(let i =0 ; i < numArr.length; i++){
for(let j =0 ; j < numArr.length - 1 ; j++){
pushArr.push(numArr[i] + numArr[j + 1])
pushArr.push(numArr[j +1] + numArr[i])
i++
}
}
console.log(pushArr); // ['47', '74', '75', '57', '59', '95', '94', '49', '47', '74', '72', '27']


let doubleArr = [] //çift sayıları buraya attık
pushArr.map((num) => {
if(num % 2 === 0) doubleArr.push(+num)
})
console.log(doubleArr); //[74, 94, 74, 72] number olarak diziye attık

if(!doubleArr.length > 0){
return console.log('dizi tek sayılardan oluşuyor');
}

return Math.max(...doubleArr)
}

alpkavas