1

My brain isn't working, and this isn't really Permutation, for example, given the input :

ab

I want :

aa
ab
bb
ba

I'm not really sure where to start.

OneOfOne
  • 95,033
  • 20
  • 184
  • 185

2 Answers2

5

In Python, use itertools.product:

>>> for xs in itertools.product('ab', repeat=2): # 2 == len('ab')
...     print(xs)
...
('a', 'a')
('a', 'b')
('b', 'a')
('b', 'b')
>>> for xs in itertools.product('ab', repeat=2):
...     print(''.join(xs))
...
aa
ab
ba
bb
falsetru
  • 357,413
  • 63
  • 732
  • 636
2

In Javascript,

var myString = "ab", result = [];

for (var i = 0; i < myString.length; i += 1) {
    for (var j = 0; j < myString.length; j += 1) {
        result.push(myString[i] + myString[j]);
    }
}

console.log(result);

Output

[ 'aa', 'ab', 'ba', 'bb' ]
thefourtheye
  • 233,700
  • 52
  • 457
  • 497