def test_permute(self):
        nums1 = [1, 2, 3, 4]
        answer1 = [
            [1, 2, 3, 4],
            [2, 1, 3, 4],
            [2, 3, 1, 4],
            [2, 3, 4, 1],
            [1, 3, 2, 4],
            [3, 1, 2, 4],
            [3, 2, 1, 4],
            [3, 2, 4, 1],
            [1, 3, 4, 2],
            [3, 1, 4, 2],
            [3, 4, 1, 2],
            [3, 4, 2, 1],
            [1, 2, 4, 3],
            [2, 1, 4, 3],
            [2, 4, 1, 3],
            [2, 4, 3, 1],
            [1, 4, 2, 3],
            [4, 1, 2, 3],
            [4, 2, 1, 3],
            [4, 2, 3, 1],
            [1, 4, 3, 2],
            [4, 1, 3, 2],
            [4, 3, 1, 2],
            [4, 3, 2, 1],
        ]
        self.assertEqual(sorted(permute(nums1)), sorted(answer1))

        nums2 = [1, 2, 3]
        answer2 = [[3, 2, 1], [2, 3, 1], [2, 1, 3], [3, 1, 2], [1, 3, 2], [1, 2, 3]]
        self.assertEqual(sorted(permute(nums2)), sorted(answer2))
Example #2
0
    def test_permute(self):
        nums1 = [1, 2, 3, 4]
        answer1 = [[1, 2, 3, 4], [2, 1, 3, 4], [2, 3, 1, 4], [2, 3, 4, 1], [1, 3, 2, 4], 
            [3, 1, 2, 4], [3, 2, 1, 4], [3, 2, 4, 1], [1, 3, 4, 2], [3, 1, 4, 2], 
            [3, 4, 1, 2], [3, 4, 2, 1], [1, 2, 4, 3], [2, 1, 4, 3], [2, 4, 1, 3], 
            [2, 4, 3, 1], [1, 4, 2, 3], [4, 1, 2, 3], [4, 2, 1, 3], [4, 2, 3, 1], 
            [1, 4, 3, 2], [4, 1, 3, 2], [4, 3, 1, 2], [4, 3, 2, 1]]
        self.assertEqual(sorted(permute(nums1)), sorted(answer1))

        nums2 = [1, 2, 3]
        answer2 = [[3, 2, 1], [2, 3, 1], [2, 1, 3], [3, 1, 2], [1, 3, 2], [1, 2, 3]]
        self.assertEqual(sorted(permute(nums2)), sorted(answer2))
 def test_permute(self):
     perms = ['abc', 'bac', 'bca', 'acb', 'cab', 'cba']
     self.assertEqual(perms, permute("abc"))
Example #4
0
 def test_permute(self):
     perms = ['abc', 'bac', 'bca', 'acb', 'cab', 'cba']
     self.assertEqual(perms, permute("abc"))
 def test_permute(self):
     perms = ["abc", "bac", "bca", "acb", "cab", "cba"]
     self.assertEqual(perms, permute("abc"))
Example #6
0
from algorithms.backtrack import permute, permute_iter, permute_recursive

a = [1, 2, 3]
b = "123"
blist = []
aperm = permute(b)
print(aperm)

bperm = permute_iter(a)
for i in bperm:
    blist.append(i)
print(blist)

print(permute_recursive(a))

#박제준 4/27