From a88416a7506c1c1d3f842c0a62168c81b9601798 Mon Sep 17 00:00:00 2001 From: Paul Jungeblut Date: Tue, 28 Mar 2017 16:19:57 +0200 Subject: Add for loop to iterate over all subsets of a bitmask. --- other/bitOps.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'other/bitOps.cpp') diff --git a/other/bitOps.cpp b/other/bitOps.cpp index b75304f..8bad842 100644 --- a/other/bitOps.cpp +++ b/other/bitOps.cpp @@ -12,3 +12,5 @@ a ^= (1 << j) a = -1 // Setzt die ersten n Bits auf 1. Achtung: Overflows. a = (1 << n) - 1 +// Iteriert über alle Teilmengen einer Bitmaske (außer der leeren Menge). +for (int subset = bitmask; subset > 0; subset = (subset - 1) & bitmask) -- cgit v1.2.3