From 6191a9f95c93001973dae4431a6ad052f43c5c72 Mon Sep 17 00:00:00 2001 From: chirbard Date: Fri, 2 Jun 2023 21:35:44 +0300 Subject: [PATCH] day1 level3 done --- solutions/day-01/level3.js | 21 +++++++++++++++++++++ solutions/day-01/level3.ts | 24 ++++++++++++++++++++++++ 2 files changed, 45 insertions(+) diff --git a/solutions/day-01/level3.js b/solutions/day-01/level3.js index b924507..89033d6 100644 --- a/solutions/day-01/level3.js +++ b/solutions/day-01/level3.js @@ -109,6 +109,27 @@ class Statistics { const count = this.count(); return this.arvuKauguseRuutMeanistSumma() / count; } + freqDist() { + const sortedArray = this._ages.sort(); + const count = sortedArray.length; + var arvudJaEsinemine = []; + var hetkeArv = sortedArray[0]; + var hetkeStreak = 1; + for (var i = 1; i < count; i++) { + if (sortedArray[i] == hetkeArv) { + hetkeStreak += 1; + } + else { + arvudJaEsinemine.push([hetkeStreak, hetkeArv]); + hetkeStreak = 1; + hetkeArv = sortedArray[i]; + } + } + var newSortedArray = arvudJaEsinemine.sort(function (a, b) { + return b[0] - a[0]; + }); + return newSortedArray; + } } const ages = [31, 26, 34, 37, 27, 26, 32, 32, 26, 27, 27, 24, 32, 33, 27, 25, 26, 38, 37, 31, 34, 24, 33, 29, 26]; const statistics = new Statistics(ages); diff --git a/solutions/day-01/level3.ts b/solutions/day-01/level3.ts index b264af9..8c8cd4c 100644 --- a/solutions/day-01/level3.ts +++ b/solutions/day-01/level3.ts @@ -120,6 +120,30 @@ class Statistics { const count = this.count(); return this.arvuKauguseRuutMeanistSumma()/count; } + + public freqDist() { + const sortedArray = this._ages.sort(); + const count = sortedArray.length; + var arvudJaEsinemine = []; + var hetkeArv = sortedArray[0]; + var hetkeStreak = 1; + + for (var i = 1; i < count; i++) { + if (sortedArray[i] == hetkeArv) { + hetkeStreak += 1; + } else { + arvudJaEsinemine.push([hetkeStreak, hetkeArv]); + hetkeStreak = 1; + hetkeArv = sortedArray[i]; + } + } + + var newSortedArray = arvudJaEsinemine.sort(function(a, b) { + return b[0] - a[0]; + }); + + return newSortedArray; + } } const ages = [31, 26, 34, 37, 27, 26, 32, 32, 26, 27, 27, 24, 32, 33, 27, 25, 26, 38, 37, 31, 34, 24, 33, 29, 26]