빅오 표기법 Big-O notation 으로 나타낸다. 계수, 상수는 계산 X
1억당 1초로 계산
메모리 상에 원소를 연속하게 배치한 자료구조
Key-Valeu 구조로 데이터를 저장하는 자료구조,
특정 Key 로 데이터를 O(1)에 삽입, 삭제, 조회할 수 있는 자료구조
FILO, 나중에 넣은 값을 가장 먼저 꺼내는 자료구조
def solution(arr):
answer = []
# [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
# print('Hello Python')
s = []
s.append(arr[0])
for i in range(1, len(arr)):
if arr[i] in s and arr[i-1] is arr[i]:
continue
s.append(arr[i])
answer =s
return answer
def solution(arr):
answer = []
# [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
# print('Hello Python')
for a in arr:
if len(answer) != 0 and answer[-1] == a:
continue
else:
answer.append(a)
return answer
FIFO, 먼저 넣은 값을 가장 먼저 꺼내는 자료구조
먼저 작은(큰) 값을 가장 먼저 꺼내는 자료구조, 최대 최소값을 찾을 때 좋은 자료구조
정렬 알고리즘 기준
가장 효율적인 정렬 알고리즘은 O(NlogN) 이 소요된다.
def solution(strings, n):
answer = []
for s in strings:
tmp = (s[n], s)
answer.append(tmp)
answer = sorted(answer, key = lambda x: (x[0], x[1]))
ans = []
for a in answer:
ans.append(a[1])
return ans