How to resolve the algorithm Power set step by step in the Logo programming language
How to resolve the algorithm Power set step by step in the Logo programming language
Table of Contents
Problem Statement
A set is a collection (container) of certain values, without any particular order, and no repeated values. It corresponds with a finite set in mathematics. A set can be implemented as an associative array (partial mapping) in which the value of each key-value pair is ignored. Given a set S, the power set (or powerset) of S, written P(S), or 2S, is the set of all subsets of S.
By using a library or built-in set type, or by defining a set type with necessary operations, write a function with a set S as input that yields the power set 2S of S.
For example, the power set of {1,2,3,4} is For a set which contains n elements, the corresponding power set has 2n elements, including the edge cases of empty set. The power set of the empty set is the set which contains itself (20 = 1): And the power set of the set which contains only the empty set, has two subsets, the empty set and the set which contains the empty set (21 = 2):
Extra credit: Demonstrate that your language supports these last two powersets.
Let's start with the solution:
Step by Step solution about How to resolve the algorithm Power set step by step in the Logo programming language
Source code in the logo programming language
to powerset :set
if empty? :set [output [[]]]
localmake "rest powerset butfirst :set
output sentence map [sentence first :set ?] :rest :rest
end
show powerset [1 2 3]
[[1 2 3] [1 2] [1 3] [1] [2 3] [2] [3] []]
You may also check:How to resolve the algorithm Compile-time calculation step by step in the Quackery programming language
You may also check:How to resolve the algorithm Hello world/Text step by step in the Axe programming language
You may also check:How to resolve the algorithm Magnanimous numbers step by step in the Java programming language
You may also check:How to resolve the algorithm Power set step by step in the Erlang programming language
You may also check:How to resolve the algorithm Monte Carlo methods step by step in the Lua programming language