From 9d87b9924f1b02db62faf66e94bef5d3dfdf8065 Mon Sep 17 00:00:00 2001 From: Jonathan Turner Date: Thu, 22 Feb 2024 22:12:21 -0500 Subject: [PATCH] Started Big O Analysis. --- src/Assignments/A2/Partition.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/Assignments/A2/Partition.java b/src/Assignments/A2/Partition.java index 9ba513d..d2e5346 100644 --- a/src/Assignments/A2/Partition.java +++ b/src/Assignments/A2/Partition.java @@ -50,6 +50,19 @@ Algorithm Design Block Big-O Analysis: (Based on Implementation) + n = the number of elements in the set. + k = the number of elements in the subset. + + | init Comps | init values | i | totalSum | generateSubsets | subset | value | subsetTotal | if(half) | asignSet | secondSubset | printResults | + ---------------------------------------------------------------------------------------------------------------------min--max--------------------- + | 1 | 1 | 1 | 1 | 2^n | 1 | 2^(n)+1 | 2^(n)+1 | 2^(n) | 0 1 | + | | | 2 | 1 | | 2 | 2^(n)+2 | 2^(n)+2 | 2^(n) | | + | | | 3 | 1 | | 3 | 2^(n)+3 | 2^(n)+3 | 2^(n) | | + | | | 4 | 1 | | 4 | 2^(n)+4 | 2^(n)+4 | 2^(n) | | + | | | ... | ... | | ... | ... | ... | 2^(n) | | + | | | n | 1 | | 2^n | 2^(n)+k | 2^(n)+k | 2^(n) | | + -------------------------------------------------------------------------------------------------------------------------------------------------- + | 1 | 1 | X | n | 2^n | X | X | | | Best-Case Scenario: Worse-Case Scenario: Average-Case: @@ -239,6 +252,12 @@ public class Partition { List firstSubset = null; List secondSubset = null; + /* If the total is odd, there cannot be equal disjoint subsets. */ + if (totalSum % 2 == 1) { + printResults(firstSubset, secondSubset); + return; + } + /* * Checks through every subset that was generated, * if a subset is found it sets the firstSubset to the found subset.