자료구조&알고리즘 파이썬 알고리즘 16일차 일단 지르고 보기... 도대체 몇 번이나 틀린 건지 모르겠다 ^^ 점점 제출하면서 오기가 생겨서 대충 풀고 대충 내기 반복... 일단 시간초과가 나지 않게 sys 모듈을 import 한 것은 아주 잘했다 ^^ 내 풀이만 보면서 무엇이 잘못되었는지 보는 것보다 맞춘 풀이랑 비교하는 게 더 좋을 것 같다. 사실 이건 좀 부끄러운 사실인데 넣고 빼는 정수, 즉 push 뒤에 오는 정수가 당연히 (... 자료구조&알고리즘자료구조&알고리즘 파이썬 알고리즘 18일차 뭔가 머리로 로직은 있는데 이걸 제대로 풀어내지 못하고... 풀이를 살펴보면 right와 left 괄호의 갯수를 세어서 같으면 YES ~ 다르면 NO ~ 정~말 단순하고도 바보 같은 생각이었다. 나는 약간 이런 문제 풀 때 반례를 제대로 생각하지 못하는 게 큰 문제인 듯하다. 이 풀이의 반례는 그래서 이렇게 풀지 말고 다르게 풀어야겠다고 생각해서 다양한 방법으로 접근해보았다. 정~말 다양한 ... 자료구조&알고리즘자료구조&알고리즘 파이썬 알고리즘 19일차 1~n까지의 수열을 내가 가지고 있을 때, 입력으로 들어온 수열을 pop과 push를 이용해서 만들 수 있으면 +와 -를 이용해 나타내보라, 만들 수 없으면 NO를 출력해라! 내가 가진 수열: 1부터 n까지 정렬된 수열 입력으로 주어진 수열 (정답 레이블) 여기서 내가 가진 수열로 pop과 push를 하게 된다. 입력으로 주어진 수열에 맞춰 pop과 push를 진행하다가, pop으로 나온 숫... 자료구조&알고리즘자료구조&알고리즘 Array와 Linked List 크기가 정해져있는 공간 배열은 같은 형의 구성 요소가 직선 모양으로 연속하여 줄지어 있는 단순한 자료구조 탐색시간 O(0) - 접근이 빠름 ex) a[0] 단점 : 수정, 삭제가 어렵다 노드 : data와 next를 가지고 있음 Linked List는 위의 노드들이 연결되어 있는 형태 Linked List : head Node[data-next]-Node[data-next]-Node[data... 자료구조&알고리즘자료구조&알고리즘 플로이드 와샬 알고리즘 플로이드 와샬 알고리즘이란? 다익스트라 알고리즘은 하나정의 정점에서 출발했을 때 다른 모든 정점으로의 최단경로를 구하는 알고리즘. 모든 정점에서 모든 정점으로의 최단 경로를 구하고 싶다면 요 아록리즘을. 차이점 다익스트라 알고리즘은 가장 적은 Guarantee를 하나씩 선택함 거쳐가는 vertex를 기준으로 최단거리를 구하는 것 위의 그래프에서 각각의 vertex가 다른 vertex로 가는 ... 자료구조&알고리즘자료구조&알고리즘 [알고리즘] 재귀 알고리즘 응용 지난번에 간단하게 재귀 알고리즘에 대해서 알아보았는데 이번에는 조금 더 자세히 알아보려고 한다! 재귀함수(recursive function): 하나의 함수에서 자신을 다시 호출하여 작업을 수행하는 함수 재귀 알고리즘의 효율성 (조합의 수 계산) 조합의 수 계산 예시를 통해 재귀 알고리즘의 효율성에 대해 알아볼 것이다. 문제: n개의 서로 다른 원소에서 m개를 택하는 경우의 수 \frac{n!... 자료구조&알고리즘자료구조&알고리즘 파이썬 알고리즘 20일차 드디어 20일차다! 꽤나 꾸준히 하는걸...? 좋아 좋아 ~~~ 오늘 문제도 못 맞췄다 ^_^ 그럴 수도 있지... 오늘은 오류는 안 났고 시간 초과가 났다. 지금 보니 시간 초과날 수 밖에 없네... 사실 이것도 되게 오래 고민해서 푼 거라 시간 초과 문제를 해결할 엄두가 안났다 ^^ 일단 문제 접근 방식은 커서의 위치를 present_loc로 설정했다. 예를 들어 문자열 abc가 입력이 ... 자료구조&알고리즘자료구조&알고리즘 파이썬 알고리즘 17일차 Yey! 한 번에 맞췄다! 사실 그렇게 어렵지 않은 문제였긴 하지만 난 가끔 list와 string의 메소드나 함수를 헷갈리기 때문에... 처음에는 오잉 했었다. 깔끔하도다... 처음에는 문장 자체를 뒤집는 줄 알고 반복문을 써서 아예 뒤집었는데, 알고 보니 문장 안의 단어들만 뒤집는 거라 2차원 배열을 써서 뒤집었다. end=""와 end=' '를 쓸 생각을 한 나 자신... 대단해 ✨ (... 자료구조&알고리즘자료구조&알고리즘 그리디 알고리즘(탐욕법) DP사용 시 지나치게 많은 일을 한다는 것에서 착안하여 고안된 알고리즘 탐욕 알고리즘 또는 욕심쟁이 알고리즘이라고도 부름. 미래를 생각하지 않고 각 단계에서 가장 최선의 선택을 하는 기법. 이렇게 각 단계에서 최선의 선택한 것이 전체적으로도 최선이길 바라는 알고리즘. 모든 경우에 다 적용되지 않음 그리디 알고리즘이 통하는 몇몇 문제들(활동 선택, 분할가능 배낭) 2.활동 선택 문제 한 강의실... 자료구조&알고리즘자료구조&알고리즘
파이썬 알고리즘 16일차 일단 지르고 보기... 도대체 몇 번이나 틀린 건지 모르겠다 ^^ 점점 제출하면서 오기가 생겨서 대충 풀고 대충 내기 반복... 일단 시간초과가 나지 않게 sys 모듈을 import 한 것은 아주 잘했다 ^^ 내 풀이만 보면서 무엇이 잘못되었는지 보는 것보다 맞춘 풀이랑 비교하는 게 더 좋을 것 같다. 사실 이건 좀 부끄러운 사실인데 넣고 빼는 정수, 즉 push 뒤에 오는 정수가 당연히 (... 자료구조&알고리즘자료구조&알고리즘 파이썬 알고리즘 18일차 뭔가 머리로 로직은 있는데 이걸 제대로 풀어내지 못하고... 풀이를 살펴보면 right와 left 괄호의 갯수를 세어서 같으면 YES ~ 다르면 NO ~ 정~말 단순하고도 바보 같은 생각이었다. 나는 약간 이런 문제 풀 때 반례를 제대로 생각하지 못하는 게 큰 문제인 듯하다. 이 풀이의 반례는 그래서 이렇게 풀지 말고 다르게 풀어야겠다고 생각해서 다양한 방법으로 접근해보았다. 정~말 다양한 ... 자료구조&알고리즘자료구조&알고리즘 파이썬 알고리즘 19일차 1~n까지의 수열을 내가 가지고 있을 때, 입력으로 들어온 수열을 pop과 push를 이용해서 만들 수 있으면 +와 -를 이용해 나타내보라, 만들 수 없으면 NO를 출력해라! 내가 가진 수열: 1부터 n까지 정렬된 수열 입력으로 주어진 수열 (정답 레이블) 여기서 내가 가진 수열로 pop과 push를 하게 된다. 입력으로 주어진 수열에 맞춰 pop과 push를 진행하다가, pop으로 나온 숫... 자료구조&알고리즘자료구조&알고리즘 Array와 Linked List 크기가 정해져있는 공간 배열은 같은 형의 구성 요소가 직선 모양으로 연속하여 줄지어 있는 단순한 자료구조 탐색시간 O(0) - 접근이 빠름 ex) a[0] 단점 : 수정, 삭제가 어렵다 노드 : data와 next를 가지고 있음 Linked List는 위의 노드들이 연결되어 있는 형태 Linked List : head Node[data-next]-Node[data-next]-Node[data... 자료구조&알고리즘자료구조&알고리즘 플로이드 와샬 알고리즘 플로이드 와샬 알고리즘이란? 다익스트라 알고리즘은 하나정의 정점에서 출발했을 때 다른 모든 정점으로의 최단경로를 구하는 알고리즘. 모든 정점에서 모든 정점으로의 최단 경로를 구하고 싶다면 요 아록리즘을. 차이점 다익스트라 알고리즘은 가장 적은 Guarantee를 하나씩 선택함 거쳐가는 vertex를 기준으로 최단거리를 구하는 것 위의 그래프에서 각각의 vertex가 다른 vertex로 가는 ... 자료구조&알고리즘자료구조&알고리즘 [알고리즘] 재귀 알고리즘 응용 지난번에 간단하게 재귀 알고리즘에 대해서 알아보았는데 이번에는 조금 더 자세히 알아보려고 한다! 재귀함수(recursive function): 하나의 함수에서 자신을 다시 호출하여 작업을 수행하는 함수 재귀 알고리즘의 효율성 (조합의 수 계산) 조합의 수 계산 예시를 통해 재귀 알고리즘의 효율성에 대해 알아볼 것이다. 문제: n개의 서로 다른 원소에서 m개를 택하는 경우의 수 \frac{n!... 자료구조&알고리즘자료구조&알고리즘 파이썬 알고리즘 20일차 드디어 20일차다! 꽤나 꾸준히 하는걸...? 좋아 좋아 ~~~ 오늘 문제도 못 맞췄다 ^_^ 그럴 수도 있지... 오늘은 오류는 안 났고 시간 초과가 났다. 지금 보니 시간 초과날 수 밖에 없네... 사실 이것도 되게 오래 고민해서 푼 거라 시간 초과 문제를 해결할 엄두가 안났다 ^^ 일단 문제 접근 방식은 커서의 위치를 present_loc로 설정했다. 예를 들어 문자열 abc가 입력이 ... 자료구조&알고리즘자료구조&알고리즘 파이썬 알고리즘 17일차 Yey! 한 번에 맞췄다! 사실 그렇게 어렵지 않은 문제였긴 하지만 난 가끔 list와 string의 메소드나 함수를 헷갈리기 때문에... 처음에는 오잉 했었다. 깔끔하도다... 처음에는 문장 자체를 뒤집는 줄 알고 반복문을 써서 아예 뒤집었는데, 알고 보니 문장 안의 단어들만 뒤집는 거라 2차원 배열을 써서 뒤집었다. end=""와 end=' '를 쓸 생각을 한 나 자신... 대단해 ✨ (... 자료구조&알고리즘자료구조&알고리즘 그리디 알고리즘(탐욕법) DP사용 시 지나치게 많은 일을 한다는 것에서 착안하여 고안된 알고리즘 탐욕 알고리즘 또는 욕심쟁이 알고리즘이라고도 부름. 미래를 생각하지 않고 각 단계에서 가장 최선의 선택을 하는 기법. 이렇게 각 단계에서 최선의 선택한 것이 전체적으로도 최선이길 바라는 알고리즘. 모든 경우에 다 적용되지 않음 그리디 알고리즘이 통하는 몇몇 문제들(활동 선택, 분할가능 배낭) 2.활동 선택 문제 한 강의실... 자료구조&알고리즘자료구조&알고리즘