s = set()
s.add(1)
s.add(2)
s.add(2)
s #{1,2}
len(s) # 2
{1,2} == {2,1} #True
s = set()
len(s) # 0
len({1, 2, 3}) # 3
s = {1, 2, 3}
s.add(4) # {1, 2, 3, 4}이나 순서는 다를 수 있음
s = {1, 2, 3}
s.discard(2) # s = {1, 3}
s = {1, 2, 3}
s.clear() # s = {}
s = {1, 2, 3}
2 in s #True
5 not in s #True
def find_same_name(s):
n = len(s)
result = set()
for i in range(0, n-1):
for j in range(i+1, n):
if a[i] == a[j]:
result.add(a[i])
return result
for i in range(0, n-1):
: 0부터 n-2까지 반복. 리스트 마지막 값인 a[n-1]을 비교할 필요가 없음.for j in range(i+1, n):
: i번째 위치에서 1을 더한 값에서 끝까지 비교성능 : O(1/2n^2 - 1/2n) = O(n^2)
def pairing(a):
n = len(a)
for i in range(0, n-1):
for j in range(i+1, n):
print(a[i] + '-' + a[j])
list = ["a", 'b', 'c']
pairing(list)