Building Java Programs: A Back To Basics Approach (5th Edition)
Building Java Programs: A Back To Basics Approach (5th Edition)
5th Edition
ISBN: 9780135471944
Author: Stuart Reges, Marty Stepp
Publisher: PEARSON
bartleby

Videos

Expert Solution & Answer
Book Icon
Chapter 12, Problem 22E

Explanation of Solution

Method definition:

//All the sub-lists of the given list of Strings gets printed.

/*elements!= null and elements contains no duplicates are the pre-condition*/

//method definition

public static void subsets(List<String> elements)

{

//define the list

List<String> chosen = new ArrayList<String>();

//call the method explore

explore(elements, chosen);

}

/*Helper recursive function defined to explore all the sub list from the given list of elements, choice is made assuming the given list of string is already chosen*/

//method definition

private static void explore(List<String> elements, List<String> chosen)

{

// base case; nothing left to choose

//validate whether the elements are empty

if (elements.isEmpty())

{

//display the chosen

System.out.println(chosen); 

}

else

{

//define the choice that is for first element

String first = elements.remove(0);

// two explorations: one with this first element, one without

//add the first element

chosen.add(first);

//call the explore method

explore(elements, chosen);

//remove the element

chosen.remove(chosen.size() - 1);

//call the method

explore(elements, chosen);

// backtrack! 1st element is put back

elements...

Blurred answer

Chapter 12 Solutions

Building Java Programs: A Back To Basics Approach (5th Edition)

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.
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education
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