public void Setup()
        {
            _oneDimensionalArraysWorkflow =
                OneDimensionalArraysWorkflowFactoryObject.GetOneDimensionalArraysWorkflowObject();

            _oneDimensionalArray = OneDimensionalArrayFactoryObject.GetOneDimensionalArrayObject();
        }
 private static void SetupNewArray(IAbstractOneDimensionalArrayObject array, int[] newArray)
 {
     for (var it = 0; it < array.GetLengthOfOneDimensionalArray(); it++)
     {
         newArray[it] = array.GetOneDimensionalArray()[it];
     }
 }
Exemple #3
0
 public void OutputOneDimensionalArray(IAbstractOneDimensionalArrayObject array)
 {
     for (var it = 0; it < array.GetLengthOfOneDimensionalArray(); it++)
     {
         Console.Write(array.GetOneDimensionalArray()[it] + " ");
     }
 }
        public void Setup()
        {
            _specialOneDimensionalArrayAlgorithms = SpecialOneDimensionalArrayAlgorithmsFactoryObject
                                                    .GetSpecialOneDimensionalArrayAlgorithms();

            _array = OneDimensionalArrayFactoryObject.GetOneDimensionalArrayObject();
        }
Exemple #5
0
 private static void ProcessCaseWhenValueIsUnderMiddlePoint(IAbstractOneDimensionalArrayObject array, int valueToSearch,
                                                            int middlePoint, ref int rightIndex)
 {
     if (valueToSearch < array.GetOneDimensionalArray()[middlePoint])
     {
         rightIndex = middlePoint - 1;
     }
 }
Exemple #6
0
 private static void ProcessCaseWhenValueIsAboveMiddlePoint(IAbstractOneDimensionalArrayObject array, int valueToSearch,
                                                            int middlePoint, ref int leftIndex)
 {
     if (valueToSearch > array.GetOneDimensionalArray()[middlePoint])
     {
         leftIndex = middlePoint + 1;
     }
 }
        public float GetArrayElementsDivision(IAbstractOneDimensionalArrayObject array)
        {
            var division = array.GetOneDimensionalArray()[0];

            for (var it = 1; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                division /= array.GetOneDimensionalArray()[it];
            }

            return(division);
        }
        public int GetArrayElementsDifference(IAbstractOneDimensionalArrayObject array)
        {
            var difference = array.GetOneDimensionalArray()[0];

            for (var it = 1; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                difference -= array.GetOneDimensionalArray()[it];
            }

            return(difference);
        }
        public int GetArrayElementsProduct(IAbstractOneDimensionalArrayObject array)
        {
            var product = 1;

            for (var it = 0; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                product *= array.GetOneDimensionalArray()[it];
            }

            return(product);
        }
        public int GetArrayElementsSum(IAbstractOneDimensionalArrayObject array)
        {
            var sum = 0;

            for (var it = 0; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                sum += array.GetOneDimensionalArray()[it];
            }

            return(sum);
        }
        public bool IsValueInArray(IAbstractOneDimensionalArrayObject array, int value)
        {
            for (var it = 0; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                if (value == array.GetOneDimensionalArray()[it])
                {
                    return(true);
                }
            }

            return(false);
        }
Exemple #12
0
        public bool LinearSearchValue(IAbstractOneDimensionalArrayObject array, int valueToSearch)
        {
            for (var it = 0; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                if (array.GetOneDimensionalArray()[it] == valueToSearch)
                {
                    return(true);
                }
            }

            return(false);
        }
Exemple #13
0
 public void SelectionSort(IAbstractOneDimensionalArrayObject array)
 {
     for (var it = 0; it < array.GetLengthOfOneDimensionalArray(); it++)
     {
         for (var jit = it + 1; jit < array.GetLengthOfOneDimensionalArray(); jit++)
         {
             if (array.GetOneDimensionalArray()[it] > array.GetOneDimensionalArray()[jit])
             {
                 SwapElements(ref array.GetOneDimensionalArray()[it], ref array.GetOneDimensionalArray()[jit]);
             }
         }
     }
 }
        public float GetArrayElementsMean(IAbstractOneDimensionalArrayObject array)
        {
            var mean = array.GetOneDimensionalArray()[0];

            for (var it = 1; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                mean += array.GetOneDimensionalArray()[it];
            }

            mean /= array.GetLengthOfOneDimensionalArray();

            return(mean);
        }
        public IAbstractOneDimensionalArrayObject BoostDownArray(IAbstractOneDimensionalArrayObject array, int booster)
        {
            var result = OneDimensionalArrayFactoryObject.GetOneDimensionalArrayObject();

            for (var it = 0; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                array.GetOneDimensionalArray()[it] /= booster;
            }

            result.SetOneDimensionalArray(array.GetOneDimensionalArray());

            return(result);
        }
Exemple #16
0
 public void BubbleSort(IAbstractOneDimensionalArrayObject array)
 {
     for (var it = 0; it < array.GetLengthOfOneDimensionalArray() - 1; it++)
     {
         for (var jit = 0; jit < array.GetLengthOfOneDimensionalArray() - it - 1; jit++)
         {
             if (array.GetOneDimensionalArray()[jit] > array.GetOneDimensionalArray()[jit + 1])
             {
                 SwapElements(ref array.GetOneDimensionalArray()[jit],
                              ref array.GetOneDimensionalArray()[jit + 1]);
             }
         }
     }
 }
        public int GetMinimumValueFromArray(IAbstractOneDimensionalArrayObject array)
        {
            var min = array.GetOneDimensionalArray()[0];

            for (var it = 1; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                if (min > array.GetOneDimensionalArray()[it])
                {
                    min = array.GetOneDimensionalArray()[it];
                }
            }

            return(min);
        }
        public IAbstractOneDimensionalArrayObject AddValueInArray(IAbstractOneDimensionalArrayObject array, int value)
        {
            var result = OneDimensionalArrayFactoryObject.GetOneDimensionalArrayObject();

            var newArray = new int[array.GetLengthOfOneDimensionalArray() + 1];

            SetupNewArray(array, newArray);

            newArray[array.GetLengthOfOneDimensionalArray()] = value;

            result.SetOneDimensionalArray(newArray);

            return(result);
        }
        public IAbstractOneDimensionalArrayObject GetArraysDivision(IAbstractOneDimensionalArrayObject arrayOne,
                                                                    IAbstractOneDimensionalArrayObject arrayTwo)
        {
            var result = OneDimensionalArrayFactoryObject.GetOneDimensionalArrayObject();

            result.SetOneDimensionalArray(arrayOne.GetOneDimensionalArray());

            for (var it = 0; it < arrayOne.GetLengthOfOneDimensionalArray(); it++)
            {
                result.GetOneDimensionalArray()[it] =
                    arrayOne.GetOneDimensionalArray()[it] / arrayTwo.GetOneDimensionalArray()[it];
            }

            return(result);
        }
Exemple #20
0
        public void InsertionSort(IAbstractOneDimensionalArrayObject array)
        {
            for (var it = 1; it < array.GetLengthOfOneDimensionalArray(); it++)
            {
                var temp = array.GetOneDimensionalArray()[it];
                var jit  = it - 1;

                while (VerifyInsertionCondition(array, jit, temp))
                {
                    array.GetOneDimensionalArray()[jit + 1] = array.GetOneDimensionalArray()[jit];
                    jit--;
                }

                array.GetOneDimensionalArray()[jit + 1] = temp;
            }
        }
Exemple #21
0
        private static int PerformSwapIfPossible(IAbstractOneDimensionalArrayObject array, int jit, int step)
        {
            if (array.GetOneDimensionalArray()[jit] > array.GetOneDimensionalArray()[jit + step])
            {
                SwapElements(ref array.GetOneDimensionalArray()[jit],
                             ref array.GetOneDimensionalArray()[jit + step]);

                jit -= step;
            }
            else
            {
                jit--;
            }

            return(jit);
        }
        public bool AreArraysEqual(IAbstractOneDimensionalArrayObject arrayOne, IAbstractOneDimensionalArrayObject arrayTwo)
        {
            if (!AssertNumbers(arrayOne.GetLengthOfOneDimensionalArray(), arrayTwo.GetLengthOfOneDimensionalArray()))
            {
                return(false);
            }

            for (var it = 0; it < arrayOne.GetLengthOfOneDimensionalArray(); it++)
            {
                if (arrayOne.GetOneDimensionalArray()[it] != arrayTwo.GetOneDimensionalArray()[it])
                {
                    return(false);
                }
            }

            return(true);
        }
        public bool IsArraySymmetric(IAbstractOneDimensionalArrayObject array)
        {
            var it  = 0;
            var jit = array.GetLengthOfOneDimensionalArray() - 1;

            while (it < jit)
            {
                if (array.GetOneDimensionalArray()[it] != array.GetOneDimensionalArray()[jit])
                {
                    return(false);
                }

                it  += 1;
                jit -= 1;
            }

            return(true);
        }
Exemple #24
0
        public void ShellSort(IAbstractOneDimensionalArrayObject array)
        {
            var step = array.GetLengthOfOneDimensionalArray() / 2;

            while (step > 0)
            {
                for (var it = step; it < array.GetLengthOfOneDimensionalArray(); it++)
                {
                    var jit = it - step;

                    while (jit >= 0)
                    {
                        jit = PerformSwapIfPossible(array, jit, step);
                    }
                }

                step /= 2;
            }
        }
Exemple #25
0
        public bool BinarySearchValue(IAbstractOneDimensionalArrayObject array, int valueToSearch)
        {
            var leftIndex  = 0;
            var rightIndex = array.GetLengthOfOneDimensionalArray() - 1;

            while (leftIndex < rightIndex)
            {
                var middlePoint = (leftIndex + rightIndex) / 2;

                if (valueToSearch == array.GetOneDimensionalArray()[middlePoint])
                {
                    return(true);
                }

                ProcessCaseWhenValueIsUnderMiddlePoint(array, valueToSearch, middlePoint, ref rightIndex);

                ProcessCaseWhenValueIsAboveMiddlePoint(array, valueToSearch, middlePoint, ref leftIndex);
            }

            return(false);
        }
Exemple #26
0
 private static bool VerifyInsertionCondition(IAbstractOneDimensionalArrayObject array, int jit, int temp)
 {
     return(jit >= 0 && array.GetOneDimensionalArray()[jit] > temp);
 }
Exemple #27
0
 public void Setup()
 {
     _oneDimensionalArray = OneDimensionalArrayFactoryObject.GetOneDimensionalArrayObject();
     _matrix = MatrixFactoryObject.GetMatrixObject();
 }