From 42766e491d4a9e9921630bfaf222aa08076c0d4d Mon Sep 17 00:00:00 2001 From: ryan Date: Mon, 27 Nov 2017 11:20:36 -0500 Subject: [PATCH 1/2] Ryan Maiale, doesnt work --- src/main/java/io/zipcoder/Problem2.java | 16 ++++++++++++++++ src/test/java/io/zipcoder/Problem2Test.java | 15 +++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/src/main/java/io/zipcoder/Problem2.java b/src/main/java/io/zipcoder/Problem2.java index e0af6a0..9e2ba5d 100644 --- a/src/main/java/io/zipcoder/Problem2.java +++ b/src/main/java/io/zipcoder/Problem2.java @@ -1,4 +1,20 @@ package io.zipcoder; public class Problem2 { + StringBuilder numberSequence = new StringBuilder(); + + public String fibonacciIteration(int number){ + + int[] fibonacciSeries = new int[number]; + fibonacciSeries[0] = 0; + fibonacciSeries[1] = 1; + + for (int i = 2; i < number; i++){ + fibonacciSeries[i] = fibonacciSeries[i - 1] + fibonacciSeries [i - 2]; + numberSequence.append(i); + + } + + return numberSequence.toString(); + }//none of this works } diff --git a/src/test/java/io/zipcoder/Problem2Test.java b/src/test/java/io/zipcoder/Problem2Test.java index fa9ffa5..795114e 100644 --- a/src/test/java/io/zipcoder/Problem2Test.java +++ b/src/test/java/io/zipcoder/Problem2Test.java @@ -1,4 +1,19 @@ package io.zipcoder; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; + public class Problem2Test { + + Problem2 problem2 = new Problem2(); + int number = 150; + + + @Test + public void fibonacciIterationTest(){ + String expected = "0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144"; + String actual = problem2.fibonacciIteration(number); + Assert.assertEquals(expected, actual); + } } From 4654ddc45f344bdd18d3c04c6547475d07aa65b0 Mon Sep 17 00:00:00 2001 From: ryan Date: Thu, 30 Nov 2017 23:03:44 -0500 Subject: [PATCH 2/2] fixed it, both work --- src/main/java/io/zipcoder/Problem2.java | 34 +++++++++++++++++++-- src/test/java/io/zipcoder/Problem2Test.java | 17 +++++++++-- 2 files changed, 46 insertions(+), 5 deletions(-) diff --git a/src/main/java/io/zipcoder/Problem2.java b/src/main/java/io/zipcoder/Problem2.java index 9e2ba5d..7499152 100644 --- a/src/main/java/io/zipcoder/Problem2.java +++ b/src/main/java/io/zipcoder/Problem2.java @@ -1,6 +1,9 @@ package io.zipcoder; +import java.util.ArrayList; + public class Problem2 { + ArrayList lisOfIntegers = new ArrayList(); StringBuilder numberSequence = new StringBuilder(); public String fibonacciIteration(int number){ @@ -8,13 +11,38 @@ public String fibonacciIteration(int number){ int[] fibonacciSeries = new int[number]; fibonacciSeries[0] = 0; fibonacciSeries[1] = 1; + numberSequence.append(fibonacciSeries[0]); + //numberSequence.append(", "+ fibonacciSeries[1]); - for (int i = 2; i < number; i++){ + for (int i = 2; number > fibonacciSeries[i - 1]; i++){ fibonacciSeries[i] = fibonacciSeries[i - 1] + fibonacciSeries [i - 2]; - numberSequence.append(i); + numberSequence.append(", " + fibonacciSeries[i - 1]); + + } + + return numberSequence.toString(); + }//works, but not efficient + public String fibonacciIterationArrayList(int number){ + //lisOfIntegers.add(0); + //lisOfIntegers.add(1); + for (int x = 0; x < number; x++){ + lisOfIntegers.add(x); } + numberSequence.append(lisOfIntegers.get(0)); + numberSequence.append(", " + lisOfIntegers.get(1)); + int previousIndex = 0; + int currentIndex = 1; + int fibNumber; + + for (int i = 0; currentIndex < lisOfIntegers.size()- previousIndex ; i++){ + fibNumber = previousIndex + currentIndex; + numberSequence.append(", " + fibNumber); + previousIndex = currentIndex; + currentIndex = fibNumber; + } return numberSequence.toString(); - }//none of this works + } + } diff --git a/src/test/java/io/zipcoder/Problem2Test.java b/src/test/java/io/zipcoder/Problem2Test.java index 795114e..4cccb0e 100644 --- a/src/test/java/io/zipcoder/Problem2Test.java +++ b/src/test/java/io/zipcoder/Problem2Test.java @@ -6,14 +6,27 @@ public class Problem2Test { - Problem2 problem2 = new Problem2(); - int number = 150; + private Problem2 problem2; + private int number; + @Before + public void setUp() { + number = 150; + problem2 = new Problem2(); + } @Test public void fibonacciIterationTest(){ String expected = "0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144"; String actual = problem2.fibonacciIteration(number); Assert.assertEquals(expected, actual); } + + @Test + public void fibItArrayListTest(){ + String expected = "0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144"; + String actual = problem2.fibonacciIterationArrayList(number); + Assert.assertEquals(expected, actual); + + } }