Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Write a JavaScript function findMostFreqNum(arr) that finds the most frequent number in an array.
- If multiple numbers appear the same maximal number of times, print the leftmost of them.
- Write JS program numberFinder.js that invokes your function with the sample input data below
- and prints the output at the console. */
- "use strict";
- function findMostFreqNum(arr) {
- if (arr.length > 1) {
- arr.sort();
- var equalsElements = 1;
- var currentEquals = 1;
- var repeatElement = arr[0];
- var i;
- for (i = 1; i < arr.length; i += 1) {
- if (arr[i] === arr[i - 1]) {
- currentEquals += 1;
- } else {
- if (currentEquals > equalsElements) {
- repeatElement = arr[i - 1];
- equalsElements = currentEquals;
- }
- currentEquals = 1;
- }
- }
- if (currentEquals > equalsElements) {
- repeatElement = arr[arr.length - 1];
- equalsElements = currentEquals;
- }
- return repeatElement + ' (' + equalsElements + ' times)';
- } else if (arr.length == 1) return arr[0] + ' (1 times)';
- else return 'undefined (0 times)';
- }
- console.log(findMostFreqNum([4, 1, 1, 4, 2, 3, 4, 4, 1, 2, 4, 9, 3]));
- console.log(findMostFreqNum([2, 1, 1, 5, 7, 1, 2, 5, 7, 3, 87, 2, 12, 634, 123, 51, 1]));
- console.log(findMostFreqNum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]));
- console.log(findMostFreqNum([2.5]));
- console.log(findMostFreqNum(['a', 'b', 'c', 'a', 'A', 'b', 'c', 'c', 'C']));
- console.log(findMostFreqNum([]));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement