Data Structures and Algorithms in Java
Data Structures and Algorithms in Java
6th Edition
ISBN: 9781119278023
Author: Michael T. Goodrich; Roberto Tamassia; Michael H. Goldwasser
Publisher: Wiley Global Education US
bartleby

Videos

Expert Solution & Answer
Book Icon
Chapter 5, Problem 15C

Explanation of Solution

Recursive method to display all subsets of set of “n” elements:

Let us take the input for subset is {1, 2, 3} and this method displays the subsets of {}, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}.

Method definition:

Create the method subsetAll() that accepts the input parameter of ArrayList as “set” to compute the output all the subsets of set of “n” elements without repeating any subsets by calling this method recursively.

//Define the subSetAll() method

private static ArrayList<ArrayList<Integer>> subsetAll(ArrayList<Integer> set)

{

  //Create an object for ArrayList

ArrayList<ArrayList<Integer>> s = new ArrayList<ArrayList<Integer>>();

  //Check whether size of "set" is equal to "0"

if (set.size() == 0)

{

  //Add the ArrayList

s.add(new ArrayList<Integer>());

}

/*Otherwise, call the subSetALL() method recursively to display all subset of set of "n" elements. */

  else

  {

  //Create an object for ArrayList

  ArrayList<Integer> rSet = new ArrayList<Integer>();

  //Add all the elements in the "set"

  rSet.addAll(set);

/*Remove the element from "rSet" and assign into "first" variable. */

  int first = rSet.remove(0);

/*Call the subSetALL() method recursively to display all subset of set of "n" elements and result is assigned to ArrayList object "subsets"*/

ArrayList<ArrayList<Integer>> subsets = subsetAll(rSet);

  //Add all the elements in the "subsets"

  s...

Blurred answer
Students have asked these similar questions
Please help draw alu diagra
1. Level the resources (R) for the following network. Show exactly which activity is being moved at each cycle and how many days it is being moved. Show all cycles required to utilize the free float and the back float. B H 3 3 L 2 0-0-0 A C F G K N P Q T 0 3 2 2 1 2-2-2 7R 8R 4R 6R 4R 2R 5R 4R D 1 2R 2 M 000 4R 2 4R 1 2 3 4 B5 B BE B 5 5 7 D 2003 C NO C MBSCM В H 5 2 F 7 7 8 SH2F80 5 Н Н 6 7 7L3G4+ 6H2G4 J 4 4 14 8 L K 00 36 9 10 11 12 13 14 15 P 2 Z+ N N 4 4 Z t 2334 4 Σ + M M 4 +
2. Perform resource allocation for the following project. Resource limits are 6 labors and 2 helpers. Legend: Activity Dur Resources G H 2 3 2L 1H 2L OH A 1 3L 1H + B D F J K 3 4 6 2 4 4L 2H 3L OH 4L 1H 2L 2H 4L 2H C E 2 2 I 1 2L 1H 3L 1H 5L 1H
Knowledge Booster
Background pattern image
Computer Science
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
SEE MORE QUESTIONS
Recommended textbooks for you
Text book image
C++ Programming: From Problem Analysis to Program...
Computer Science
ISBN:9781337102087
Author:D. S. Malik
Publisher:Cengage Learning
Text book image
Programming Logic & Design Comprehensive
Computer Science
ISBN:9781337669405
Author:FARRELL
Publisher:Cengage
Text book image
EBK JAVA PROGRAMMING
Computer Science
ISBN:9781337671385
Author:FARRELL
Publisher:CENGAGE LEARNING - CONSIGNMENT
Text book image
C++ for Engineers and Scientists
Computer Science
ISBN:9781133187844
Author:Bronson, Gary J.
Publisher:Course Technology Ptr
Text book image
Microsoft Visual C#
Computer Science
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Cengage Learning,
Text book image
New Perspectives on HTML5, CSS3, and JavaScript
Computer Science
ISBN:9781305503922
Author:Patrick M. Carey
Publisher:Cengage Learning
Introduction to Big O Notation and Time Complexity (Data Structures & Algorithms #7); Author: CS Dojo;https://www.youtube.com/watch?v=D6xkbGLQesk;License: Standard YouTube License, CC-BY