diff --git a/src/main/java/com/zipcodewilmington/arrayutility/ArrayUtility.java b/src/main/java/com/zipcodewilmington/arrayutility/ArrayUtility.java index ca32e28..1928239 100644 --- a/src/main/java/com/zipcodewilmington/arrayutility/ArrayUtility.java +++ b/src/main/java/com/zipcodewilmington/arrayutility/ArrayUtility.java @@ -1,7 +1,65 @@ package com.zipcodewilmington.arrayutility; +import org.omg.CORBA.Object; + +import java.util.Arrays; + /** * Created by leon on 3/6/18. */ -public class ArrayUtility { +public class ArrayUtility { + + T[] inputArray; + + public ArrayUtility(T[] array){ + this.inputArray = array; + } + + public Integer countDuplicatesInMerge(T[] arrayToMerge, T valueToEvaluate) { + Integer counter = getNumberOfOccurrences(valueToEvaluate); + for(T t: arrayToMerge){ + if(t == valueToEvaluate){ counter++; } + } return counter; + } + + public T getMostCommonFromMerge(T[] arrayToMerge) { + T mostOccuring = null, temp; + int counter = 0, holder = 0; + for(int i = 0; i < arrayToMerge.length; i++ ){ + temp = arrayToMerge[i]; + for(int j = 0; j < arrayToMerge.length; j++){ + if(temp.equals(arrayToMerge[j])){ + counter++; + } + } + if(counter > holder){ + holder = counter; + mostOccuring = arrayToMerge[i]; + } + counter = 0; + } + return mostOccuring; + } + + public Integer getNumberOfOccurrences(T valueToEvaluate) { + Integer counter = 0; + for(T t: inputArray){ + if(t == valueToEvaluate){ + counter++; + } + } + return counter; + } + + public T[] removeValue(T valueToRemove) { + Integer occurs = inputArray.length - getNumberOfOccurrences(valueToRemove); + T[] newT = Arrays.copyOf(inputArray,occurs); + int j = 0; + for(T t: inputArray){ + if(t != valueToRemove){ + newT[j] = t; + j++; + } + } return newT; + } } diff --git a/src/test/java/com/zipcodewilmington/arrayutility/RemoveValueTest.java b/src/test/java/com/zipcodewilmington/arrayutility/RemoveValueTest.java index d464896..631a00d 100644 --- a/src/test/java/com/zipcodewilmington/arrayutility/RemoveValueTest.java +++ b/src/test/java/com/zipcodewilmington/arrayutility/RemoveValueTest.java @@ -1,6 +1,4 @@ package com.zipcodewilmington.arrayutility; - -import com.zipcodewilmington.UnitTestingUtils; import org.junit.Test; /**