diff --git a/src/main/java/io/zipcoder/Problem2.java b/src/main/java/io/zipcoder/Problem2.java index e0af6a0..900ee44 100644 --- a/src/main/java/io/zipcoder/Problem2.java +++ b/src/main/java/io/zipcoder/Problem2.java @@ -1,4 +1,23 @@ package io.zipcoder; +import java.util.ArrayList; + public class Problem2 { +// public static int fib(int n) { +// if (n <= 1) return n; +// return fib(n - 1) + fib(n - 2); +// } +ArrayList list = new ArrayList<>(13); + public String fibonaccilIteration(int n) { + + list.add(0); + list.add(1); + if (list.size() - 1 < n) { + for (int i = 0; i < list.size(); i++) { + list.add(i + 2, list.get(i) + list.get(i + 1)); + } + } + System.out.println(list); + return list.toString(); + } } diff --git a/src/test/java/io/zipcoder/Problem2Test.java b/src/test/java/io/zipcoder/Problem2Test.java index fa9ffa5..df770bd 100644 --- a/src/test/java/io/zipcoder/Problem2Test.java +++ b/src/test/java/io/zipcoder/Problem2Test.java @@ -1,4 +1,15 @@ package io.zipcoder; +import org.junit.Assert; +import org.junit.Test; + public class Problem2Test { + Problem2 problem2 = new Problem2(); + @Test + public void testFibonaccilIteration(){ + String expected = "0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144"; + String actual = problem2.fibonaccilIteration(150); + Assert.assertEquals(expected,actual); + } + }