From 52deadb72d3a728227edb22ac4712438f9ff923d Mon Sep 17 00:00:00 2001 From: Savio Date: Sun, 30 Oct 2022 15:22:02 -0300 Subject: [PATCH] feat(mostRepeatedChar): Adicionando algoritmo que retorna a letra mais repetida de uma string. --- 08-isAnagram/readme.md | 12 +++++------- 09-mostRepeatedChar/index.js | 30 +++++++++++++++++++++++++++--- 2 files changed, 32 insertions(+), 10 deletions(-) diff --git a/08-isAnagram/readme.md b/08-isAnagram/readme.md index 602e336..b95b114 100644 --- a/08-isAnagram/readme.md +++ b/08-isAnagram/readme.md @@ -1,13 +1,11 @@ -# Desafio 08: Anagrama +# Desafio 08: Anagrama Faça um algoritmo que retorne se um palavra é anagram da outra ## Exemplo ```js - -isAnagram('roma', 'amor') // true -isAnagram('roma', 'amora') // false -isAnagram('roma', 'amora') // false - -``` \ No newline at end of file +isAnagram("roma", "amor"); // true +isAnagram("roma", "amora"); // false +isAnagram("roma", "amora"); // false +``` diff --git a/09-mostRepeatedChar/index.js b/09-mostRepeatedChar/index.js index b113ed8..8d6710b 100644 --- a/09-mostRepeatedChar/index.js +++ b/09-mostRepeatedChar/index.js @@ -1,4 +1,28 @@ export function mostUsedChar(text) { - // implementar logica aqui - return "" -} \ No newline at end of file + let vetChar = []; + let qtdCharAtual = 0; + let charAtual = ""; + let qtdCharMaior = 0; + let charMaior = ""; + for (let index = 0; index < text.length; index++) { + const element = text[index]; + if (!vetChar.includes(element)) { + vetChar.push(element); + } + } + for (let chave = 0; chave <= vetChar.length; chave++) { + charAtual = vetChar[chave]; + qtdCharAtual = 0; + for (let index = 0; index <= text.length; index++) { + if (vetChar[chave] === text[index]) { + qtdCharAtual = qtdCharAtual + 1; + } + if (qtdCharMaior < qtdCharAtual && vetChar[chave] !== text[index]) { + charMaior = charAtual; + qtdCharMaior = qtdCharAtual; + } + } + } + + return charMaior; +}