Skip to content

Commit 71d8bfe

Browse files
committed
Project Freecode - Basic Alghoritm
0 parents  commit 71d8bfe

15 files changed

+234
-0
lines changed

bouncer.js

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
function bouncer(arr) {
2+
// Don't show a false ID to this bouncer
3+
return arr.filter(Boolean);
4+
//return arr;
5+
}
6+
7+
bouncer([7, "ate", "", false, 9]);

chunkymonkey.js

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
function chunkArrayInGroups(arr, size) {
2+
// Break it up.
3+
var arrTempo = [];
4+
var numVueltas = Math.ceil(arr.length/size);
5+
console.log("numero de vueltas: "+ Math.ceil(arr.length/size));
6+
while(arr.length>0){
7+
//for(var cont = 0; cont < size; cont++){
8+
9+
//}
10+
arrTempo.push(arr.splice(0,size));
11+
console.log("Ahora ArrTempo vale"+arrTempo);
12+
}
13+
console.log("arrTempo vale: "+arrTempo);
14+
return arrTempo;
15+
}
16+
17+
//chunkArrayInGroups(["a", "b", "c", "d"], 2);
18+
chunkArrayInGroups([0, 1, 2, 3, 4, 5], 2);

compareEndingString.js

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
function confirmEnding(str, target) {
2+
// "Never give up and good luck will find you."
3+
// -- Falcor
4+
var stringToCompare = str.substring(str.length-target.length,str.length);
5+
return stringToCompare == target ? true : false;
6+
// Simplified
7+
//return str.substring(str.length-target.length,str.length) == target ? true: false;
8+
}
9+
10+
confirmEnding("Bastian", "n");

factorial.js

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
function factorialize(num) {
2+
var total=1;
3+
for (var x = 1; x<=num;x++){
4+
console.log("total vale "+total+" * "+x);
5+
total *= x;
6+
}
7+
return total;
8+
}
9+
10+
factorialize(5);

largestOfFour.js

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
function largestOfFour(arr) {
2+
// You can do this!
3+
// MAP Create new array with values.
4+
return arr.map(function(listNumbers){
5+
// REDUCE go through listNumbers values comparing until finish with the
6+
// bigger of them.
7+
return listNumbers.reduce(function(antNum,postNum){
8+
// ALTERNATIVE return postNum > antNum ? postNum : antNum;
9+
if (postNum > antNum){
10+
console.log ("Devolviendo: "+postNum);
11+
return postNum;
12+
}
13+
else{
14+
console.log ("Devolviendo: "+antNum);
15+
return antNum;
16+
}
17+
}, 0);
18+
});
19+
}
20+
21+
largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);

longest-word-string.js

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
function findLongestWord(str) {
2+
var arrWord = str.split(" ");
3+
str = "";
4+
arrWord.map(function(word){
5+
if(word.length>str.length){
6+
str = word;
7+
}
8+
});
9+
10+
return str.length;
11+
}
12+
13+
findLongestWord("The quick brown fox jumped over the lazy dog");

mutation.js

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
function mutation(arr) {
2+
for (var cont = 0; cont < arr[1].length; cont++){
3+
4+
if(arr[0].toLowerCase().indexOf(arr[1][cont].toLowerCase()) == -1){
5+
6+
return false;
7+
8+
}
9+
10+
}
11+
return true;
12+
//return arr;
13+
}
14+
15+
mutation(["hello", "hey"]);

palindrome.js

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
function palindrome(str) {
2+
// Good luck!
3+
// Same as input.replace(/\W/g, '')
4+
var newString = str.replace(/[^0-9a-z]/gi, '');
5+
var compareString;
6+
newString = newString.toLowerCase();
7+
console.log("newstring vale: "+newString);
8+
compareString = newString.split('').reverse().join('');
9+
if (compareString == newString){
10+
return true;
11+
}
12+
else{
13+
return false;
14+
}
15+
16+
}
17+
18+
palindrome("0_0 (: /-\ :) 0-0");
19+
palindrome("eye");

repeatStringNumTimes.js

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
function repeatStringNumTimes(str, num) {
2+
// repeat after me
3+
if (num < 1){
4+
return "";
5+
}else{
6+
7+
var newString ="";
8+
for (var count = 0; count < num; count++){
9+
newString = newString.concat(str);
10+
}
11+
return newString;
12+
}
13+
14+
}
15+
16+
repeatStringNumTimes("abc", 3);

reverseString.js

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
function reverseString(str) {
2+
// Convert into an array
3+
var strSplitted = str.split("");
4+
// Reverse array
5+
strSplitted = strSplitted.reverse();
6+
// Join
7+
str = strSplitted.join("");
8+
return str;
9+
}
10+
11+
reverseString("hello");

seekAndDestroyer.js

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
function destroyer(arr) {
2+
// Remove all the values
3+
4+
var arrayToCompare = Array.from(arguments).slice(1);
5+
return arr.filter(function(word){
6+
//console.log("Comparando arr: "+word+" con arrayToCompare");
7+
return !arrayToCompare.includes(word);
8+
});
9+
}
10+
11+
function isIncludedOn(arr){
12+
13+
}
14+
destroyer([1, 2, 3, 1, 2, 3], 2, 3);

slasher.js

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
function slasher(arr, howMany) {
2+
// it doesn't always pay to be first
3+
console.log("Valor "+arr.slice(howMany,arr.length));
4+
return arr.slice(howMany,arr.length);
5+
}
6+
7+
slasher([1, 2, 3], 2);

title-case.js

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
function titleCase(str) {
2+
var newString = str.split(" ");
3+
var newArrayString = [];
4+
newString.map(function(word){
5+
console.log("analizando: "+word);
6+
newArrayString.push(word.charAt(0).toUpperCase() + word.slice(1).toLowerCase());
7+
});
8+
console.log("newarraystring: "+newArrayString);
9+
str = newArrayString.join(" ");
10+
return str;
11+
}
12+
13+
titleCase("I'm a little tea pot");

truncateString.js

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
function truncateString(str, num) {
2+
// Clear out that junk in your trunk
3+
if (num >=1){
4+
if (str.length < 3){
5+
return str.substring(0,1)+"...";
6+
}
7+
else if (num <=3){
8+
return str.substring(0,num)+"...";
9+
}
10+
else if (str.length <= num){
11+
return str;
12+
}
13+
else if (str.length > num){
14+
return str.substring(0,num-3)+"...";
15+
}
16+
}
17+
18+
}
19+
20+
truncateString("A-tisket a-tasket A green and yellow basket", 11);

whereDoIBelong.js

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
2+
function getIndexToIns(arr, num) {
3+
// Find my place in this sorted array.
4+
var arr2=[];
5+
var arr3="";
6+
arr.sort(function (a, b) { return a - b; });
7+
//console.log("Analizando arr: "+arr+" con num "+num);
8+
for(var cont = 0; cont < arr.length; cont++){
9+
if (arr[cont] >= num){
10+
arr3=cont;
11+
break;
12+
}else{
13+
arr3=arr.length;
14+
}
15+
}
16+
return arr3;
17+
/* FIRST TRY
18+
arr.reduce(function(val,actNum,index){
19+
if (val == num && index==1){
20+
console.log("Estoy devolviendo 0");
21+
arr2.push(0);
22+
return 0;
23+
}
24+
while (actNum >= num){
25+
arr2.push(index);
26+
return index;
27+
}
28+
});
29+
//return num;
30+
if (arr2.length == 0){
31+
return arr.length;
32+
}
33+
else{
34+
return arr2[0];
35+
}
36+
*/
37+
38+
}
39+
40+
getIndexToIns([40, 60], 50);

0 commit comments

Comments
 (0)