Udemy : 알고리즘 자료구조
Udemy : 알고리즘 자료구조 udemy 알고리즘 코딩 테스트 배열 파이썬은 리스트를 사용한다 arr = [10, 11, 12, 13] arr[2] = 5 # output : [10, 11, 5, 13] 탐색 : O(1) 삽입/삭제 : O(N) 스택/ 큐 Stack = LIFO (Last In First Out) 리스트 안에 제일 마지막에 추가된 요소를, 제일 먼저 뺀다 즉 append를 통해서, 리스트 제일 마지막에 값을 넣는다 pop을 통해서 리스트 제일 마지막 요소를 빼낸다 맨 마지막에 요소를 추가하거나, 맨 마지막의 요소를 빼는 것이라서 삽입/삭제가 O(1) 이다 Queue = FIFO (First In First Out) 리스트 안에 제일 처음에 추가된 요소를, 제일 먼저 빼는 것 deque를..
2023. 3. 2.
[Python] 백준 1300 K번째 수
🧑💻 [Python] 백준 1300 Gold 2 - 이진 탐색 이 문제를 통해 더 많은 고민을 하고, 문제를 풀어야겠다는 생각을 했다 그냥 이진 배열을 만들고, 그 배열을 다시 일차원으로 만들어서, 정렬을 한 후에, k번째 숫자를 구할 수 있다 하지만 테스트를 통과하지 않는다 이진 배열을 만들고, 또 일차원 배열로 만드는 것이 메모리 면에서, 굉장히 많이 잡아 먹는다 하지만 A[i][j]는 패턴이 있다 첫 열은, 모든 수를 1로 곱하면 된다 [1, 2, 3, 4, 5] 두 번째 열은, 모든 수를 2로 곱하면 된다 [2, 4, 6, 8, 10] 세 번째 열은 ,모든 수를 3으로 곱하면 된다 [3, 6, 9, 12, 15] 이런 식인 패턴이 있다 위의 패턴을 보게 된다면 특정 숫자를 만들 때에, 그 숫자보..
2023. 2. 27.