-
- 그리디
- 구현
- DFS/BFS를 활용한 탐색
-
- N 의 범위 500 : N^3
- N 의 범위 2000 : N^2
- N 의 범위 100,000 : NlogN
- N 의 범위 10,000,000 : N
-
-
리스트
-
리스트의 초기화하는 경우에 많이 사용된다
array = [i for i in range(10)] array = [i for i in range(10) if i%2 ==1 ] array = [i*i for i in range(10)] # 가장 많이 사용되는 때는 2차원 배열 초기화할 때 array = [[0]*m for _ in range(n)] # m이 열이 되고 n이 행이 된다.
-
리스트 관련 메소드
- append/pop : O(1)
- sort()/sort(reverse=True) : O(NlogN)
- 순서가 있기 때문에 인덱싱을 통해 값을 얻을 수 있음
-
인덱스
- 모든 인덱스는 왼쪽부터 시작한다 왼(0) ---> 오(size -1)
- for a in list --> 리스트의 왼쪽 원소부터 차례대로 봄
-
-
튜플
- 튜플은 한 번 선언하면 변경이 불가능하다
- 순서가 있기 때문에 인덱싱을 통해 값을 얻을 수 있음
-
-
Key 값을 이용해서 O(1)의 시간복잡도로 조회가능
-
딕셔너리를 이용한 count 찾고자 하는 키가 정의된 딕셔너리에 없는 경우에 사용
get(para1,paar2) : 찾고자하는 para1이 없는 경우에는 para2를 return
stages = [2, 1, 2, 6, 2, 4, 3, 3] stage_dict = {} stage_dict2 = {} people = len(stages) # 총 사람의 수 for i in stages: stage_dict[i] = stage_dict.get(i,0) +1
-
-
집합(set)
- 집합의 원소 값을 이용해서 O(1)의 시간복잡도로 조회가능
- 중복을 허용하지 않는다
- 순서가 없다
-
-
-
map(함수, 리스트) map(lambda x: x ** 2, range(5)) # [0, 1, 4, 9, 16] -
인자(매개변수)를 입력하고 콜론(:)을 넣은 다음에 해당 인자를 이용한 표현식을 입력한다.
map(lambda x: x ** 2, range(5)) # [0, 1, 4, 9, 16]위의 예시에서도 x에 0 ~ 4가 입력되고 해당 x에 제곱이라는 표현식을 이용하여 반환한다.
-
filter() : 리스트로부터 원소를 하나씩 꺼내서 함수를 적용시킨 다음, Boolean 값을 반환한다. True를 반환하면 그 요소는 남게 되고, False를 반환하면 그 요소는 제거한다.
filter(함수, 리스트) list(filter(lambda x: x % 3 == 0,[2, 18, 9, 22, 17, 24, 8, 12, 27])) # [18, 9, 24, 12, 27]
-
-
Notifications
You must be signed in to change notification settings - Fork 0
HYEONAH-SONG/Algorithms
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Latest commit | ||||
Repository files navigation
About
Algorithms
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published