From a014e0b49a270304d7702484e232c0068517f60c Mon Sep 17 00:00:00 2001 From: gglowe Date: Mon, 30 Nov 2020 09:16:37 -0500 Subject: [PATCH] finished arrayUtils.js --- ArrayUtils.js | 91 +++++++++++++++++++++++++++++++++++++++++++++------ index.html | 12 +++++++ 2 files changed, 93 insertions(+), 10 deletions(-) create mode 100644 index.html diff --git a/ArrayUtils.js b/ArrayUtils.js index 2869d1e..016750e 100644 --- a/ArrayUtils.js +++ b/ArrayUtils.js @@ -1,21 +1,92 @@ class ArrayUtils{ - isEmpty(array){return false;} + isEmpty(array){ + if (array.length === 0){ + return true + } return false + } - append(original, value){return original;} + append(array, newValue){ + array[array.length] = newValue; + return array + } - clone(original){return original;} + clone(original){ + let newArr = [] + newArr = original + return newArr + } - subArray(original, from, to){return original;} + subArray(original, from, to) { + let newArray = [] + + for (let i = from; original[i] <= original[to]; i++){ + newArray[newArray.length] = original[i] + } + return newArray + } - equals(arr1, arr2){return false;} + equals(arr1, arr2){ + if (arr1.length !== arr2.length) return false; + + for (let i = 0; i < arr1.length; i++) { + if (arr1[i] !== arr2[i]) return false; + } + + return true; + } - fill(original, value){} - indexOf(original, value){return -1;} + fill(original, value) { + for (let i = 0; i < original.length; i++){ + original[i] = value + } + return original +} - remove(original, value){return original;} + indexOf(original, value) { + for (let i = 0; i < original.length; i++){ + if(original[i] === value) { + return i + break + } + } + return -1; + } + + remove(original, value){ + let newOrig = [...original] + + for (let i = 0; i < newOrig.length; i++) { + if (newOrig[i] === value) { + delete newOrig[i] + return newOrig + break + } + } + } - reverse(original){} + reverse(original) { + let top = original.length - 1; + let bottom = 0; + let swap = 0; + + while (top - bottom >= 1) { + swap = original[bottom]; + original[bottom] = original[top]; + original[top] = swap; + bottom++; + top--; + } + return original + } -} \ No newline at end of file +} + +const arrayUtils = new ArrayUtils(); + + + + +test = [0, 1, 2] + diff --git a/index.html b/index.html new file mode 100644 index 0000000..87f63bd --- /dev/null +++ b/index.html @@ -0,0 +1,12 @@ + + + + + + Array Lab + + + + + + \ No newline at end of file