From fb2e4bad205b977fb612d37e62e5eeadaa5c734f Mon Sep 17 00:00:00 2001 From: Jagdish Prajapati Date: Sat, 4 Jan 2025 17:51:33 +0530 Subject: [PATCH] updating method signature in flatten array --- .../practice/flatten-array/.meta/config.json | 1 + .../.meta/src/reference/java/Flattener.java | 29 ++++++------------- .../src/main/java/Flattener.java | 2 +- 3 files changed, 11 insertions(+), 21 deletions(-) diff --git a/exercises/practice/flatten-array/.meta/config.json b/exercises/practice/flatten-array/.meta/config.json index 938167ee9..8b521fdd6 100644 --- a/exercises/practice/flatten-array/.meta/config.json +++ b/exercises/practice/flatten-array/.meta/config.json @@ -6,6 +6,7 @@ "aadityakulkarni", "FridaTveit", "jackattack24", + "jagdish-15", "jmrunkle", "jtigger", "kytrinyx", diff --git a/exercises/practice/flatten-array/.meta/src/reference/java/Flattener.java b/exercises/practice/flatten-array/.meta/src/reference/java/Flattener.java index 0c3e5e7a3..5cff9efd1 100644 --- a/exercises/practice/flatten-array/.meta/src/reference/java/Flattener.java +++ b/exercises/practice/flatten-array/.meta/src/reference/java/Flattener.java @@ -1,28 +1,17 @@ import java.util.ArrayList; -import java.util.Collections; import java.util.List; -final class Flattener { +class Flattener { - List flatten(final List nestedList) { - if (nestedList.isEmpty()) { - return new ArrayList<>(); - } else { - final List result = new ArrayList(); - - final Object head = nestedList.get(0); - final List tail = nestedList.subList(1, nestedList.size()); - - if (head instanceof List) { - result.addAll(flatten((List) head)); - } else { - result.add(head); + List flatten(List list) { + List flattenedList = new ArrayList<>(); + for (Object element: list) { + if (element instanceof List listAsElement) { + flattenedList.addAll(flatten(listAsElement)); + } else if (element != null) { + flattenedList.add(element); } - - result.addAll(flatten(tail)); - result.removeAll(Collections.singleton(null)); - return result; } + return flattenedList; } - } diff --git a/exercises/practice/flatten-array/src/main/java/Flattener.java b/exercises/practice/flatten-array/src/main/java/Flattener.java index c2759577f..69db9b0b4 100644 --- a/exercises/practice/flatten-array/src/main/java/Flattener.java +++ b/exercises/practice/flatten-array/src/main/java/Flattener.java @@ -2,7 +2,7 @@ class Flattener { - List flatten(List list) { + List flatten(List list) { throw new UnsupportedOperationException("Delete this statement and write your own implementation."); }