Power set: Difference between revisions

Content added Content deleted
m (→‎{{header|Go}}: User new and more efficient strings.Builder)
Line 1,205: Line 1,205:


import (
import (
"bytes"
"fmt"
"fmt"
"strconv"
"strconv"
"strings"
)
)


Line 1,289: Line 1,289:
return "∅"
return "∅"
}
}
var buf bytes.Buffer
var buf strings.Builder
buf.WriteRune('{')
buf.WriteRune('{')
for i, e := range s {
for i, e := range s {
Line 1,308: Line 1,308:
for _, er := range r {
for _, er := range r {
er := er.(set)
er := er.(set)
u = append(u, append(er[:len(er):len(er)], es))
u = append(u, append(er[:len(er):len(er)], es))
}
}
r = append(r, u...)
r = append(r, u...)