<aside> 🧑💻 count()
</aside>
<aside> 🧑💻 index()
</aside>
문제에서 활용)
<aside> ✅ combination()
</aside>
from itertools import combinations, permutations
nums = [1, 2, 3, 4]
# 순열
perm = list(combinations(nums, 2))
# ans : [(1, 2), (1, 3), (1, 4), (2, 1), (2, 3), (2, 4),
# (3, 1), (3, 2), (3, 4), (4, 1), (4, 2), (4, 3)]
# 조합
combi = list(combinations(nums, 2))
# ans : [(1, 2), (1, 3), (2, 4), (3, 4)]
<aside> ✅ permutations
</aside>
from itertools import permutations
num_list = [1, 2, 3, 4]
perm = list(permutations(num_list, 2))
print(f"순열 메소드 사용 시 : {perm}")
# 재귀로 구현
def permute(arr, num):
arr = sorted(arr)
used = [0 for _ in range(len(arr))]
def recur(pick, used):
if len(pick) == num:
print(pick, end = ', ')
return
for idx in range(len(arr)):
if not used[idx]:
pick.append(arr[idx])
used[idx] = 1
recur(pick, used)
used[idx] = 0
pick.pop()
recur([], used)
permute([1, 2, 3, 4], 2)