Skip to content

Commit f9d3bce

Browse files
committed
Create Off Line Minimium
1 parent 1ab645c commit f9d3bce

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed

Off Line Minimium

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
/***************************************************************************************
2+
* *
3+
* CODERBYTE BEGINNER CHALLENGE *
4+
* *
5+
* OffLine Minimum *
6+
* Using the JavaScript language, have the function OffLineMinimum(strArr) take the *
7+
* strArr parameter being passed which will be an array of integers ranging from *
8+
* 1...n and the letter "E" and return the correct subset based on the following *
9+
* rules. The input will be in the following format: ["I","I","E","I",...,"E",...,"I"] *
10+
* where the I's stand for integers and the E means take out the smallest integer *
11+
* currently in the whole set. When finished, your program should return that new set *
12+
* with integers separated by commas. For example: if strArr is *
13+
* ["5","4","6","E","1","7","E","E","3","2"] then your program should return 4,1,5. * *
14+
* *
15+
* SOLUTION *
16+
* This challenge requires you to repeatedly find the lowerst value in a subset of an *
17+
* array every time the letter E is found. So to handle this repettiion I am creating *
18+
* a function that will sort an array in ascending order and return the lowest value. *
19+
* I will loop through each entry in the array and when I encounter an E then I will *
20+
* pass a subset of my array starting from position 0 to the location of the E. I *
21+
* will send this subset to my function to get the lowest value. I will collect all *
22+
* of the lowest values in an array. When finished I will convert array to string.
23+
* *
24+
* Steps for solution *
25+
* 1) Initialize var subset and min *
26+
* 2) Create function that sorts an array in asc order and returns lowest value *
27+
* 3) Store lowest value in an array *
28+
* 4) Convert array into a string and return as answer *
29+
* *
30+
***************************************************************************************/
31+
32+
function OffLineMinimum(strArr) {
33+
34+
var subset = [], min = 0;
35+
function findMin (arr) { return arr.sort(function (a,b) {return Number(a)-Number(b);})[0]; }
36+
for (var i=0;i<strArr.length;i++) {
37+
if (strArr[i] == "E") {
38+
min = findMin(strArr.slice(0,i));
39+
minIndex = strArr.slice(0,i).indexOf(min)
40+
subset.push(Number(min));
41+
strArr = strArr.slice(0,minIndex).concat(strArr.slice(minIndex+1,i)).concat(strArr.slice(i+1));
42+
i-=2;
43+
}
44+
}
45+
return subset.join(",");
46+
47+
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy