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
  • 88,915
  • 19
  • 172
  • 173

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
  • 336,967
  • 57
  • 673
  • 597
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
  • 221,210
  • 51
  • 432
  • 478