목록전체 글 (83)
minzzl
안녕하세요! 저는 드디어 그리디로 넘어왔습니당 그리디 문제는 처음에 갈피를 잡지 못하면 산으로 가게되는? 것 같습니다 ... 그래서 저는 한 세시간을 태우다가 돌아돌아 정답을 내었지요 .. 문제 풀이 처음에 생각했던 풀이는 dfs 였습니다. 그런데 시간초과 오류가 발생했고 .. 다른 풀이를 생각해내어야했습니다 ! 그래서 생각해낸 것은 "앞자리에 큰 숫자가 오는 것이 전체 수를 크게 만든다" 였습니다. 이에 stack을 활용하였습니당 ! stack을 사용한 이유는 담겨진 숫자의 제일 마지막 수와 새로 들어올 수의 크기를 비교하는 연산이 필요한데, 이 때 pop() 을 사용하는 것이 효율적이라고 생각했기 때문입니다. stack을 활용해서 이 문제를 푼다면 다음과 같이 풀이가 가능합니다. number = "4..
안녕하세용 오늘은 깊이 우선 탐색과 넓이 우선 탐색에 대해 공부해볼텐데요, 우선 깊이 우선 탐색입니당 그래프 탐색 하나의 정점으로 부터 시작하여 차례대로 모든 정점들을 한 번씩 방문하는 것 ex) 특정 도시에서 다른 도시로 갈 수 있는지 없는지, 전자 회로에서 특정 단자와 단자가 서로 연결되어 있는지 깊이 우선 탐색(DFS, Depth-First Search) 깊이 우선 탐색이란 루트 노드(혹은 다른 임의의 노드)에서 시작해서 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하기 탐색하는 방법 미로를 탐색할 때 한 방향으로 갈 수 있을 때까지 계속 가다가 더 이상 갈 수 없게 되면 다시 가장 가까운 갈림길로 돌아와서 이곳으로부터 다른 방향으로 다시 탐색을 진행하는 방법과 유사하다. BFS는 넓게..
안녕하세용 좋은 아침입니당 사실 이 문제는 스스로 풀지 못했습니다 ... 우선 문제부터 살펴보겠습니다. 문제 풀이 해당 문제에서 가장 어려웠던 점이, 가장 큰 자리 수가 같을 때, 어떻게 대소 비교를 하느냐였습니다. 예를들어, [838,83] 과 [383,38] 이 입력 값으로 들어올 때를 가정해봅시다. 각 경우에서 만들 수 있는 가장 큰 수는 다음과 같습니다. [838, 83] -> "83883" [383, 38] -> "38383" 위와 같이 가장 큰 수를 만들기 위해, 어떠한 기준으로 수를 정렬해야할까요? 사실 정답은 간단했습니다. 일의 자리보다 큰 자리 수를 가진 수의 경우, 그 다음 자리수도 비교의 대상이 되도록 하면되는 것입니다. 이는, [383, 38] 이라는 수가 주어졌을 때, 맨 앞자리는..
안녕하세요 ! 오늘 아침에 Heap을 끝내고 정렬로 넘어왔습니다 !!! 사실 코테만 준비하면 지금보다 더 일찍 끝낼 수 있을 것 같은데 논문 작업을 해야하기 때문에 계속 미뤄지게되네욥 ... 그치만 이번주에는 코테에 시간을 투자해보려고 합니다!!! 저의 목표로는 이번주에 프로그래머스 기본적인 문제를 끝내고 다음 주 부터는 백준으로 넘어가서 하루에 한문제 정도 풀면서 연구실 일을 시작하려고 합니당 주변에 다들 코테 정도는 안정적일정도로 준비했다고 하는 것 같아서 너무 너무 쪼달리지만 ^^ 어떻게든 되겟죠 ... ? 할 수 있다 !!!! 문제 풀이 사실 아주 직관적으로 풀었기 때문에 어려움은 없었습니다. 파이썬 리스트는 arr[index: index'] 형태로 리스트를 새로 반환할 수 있기 때문에 리스트를 ..
안녕하세용 방금 전 stack과 queue를 끝냈습니당 ! 오늘은 Heap에 대해 집중 탐구 해 볼 예정입니당 힙에 대해 알기 전, 우리는 우선 순위 큐를 알아야합니다. https://gmlwjd9405.github.io/2018/05/10/data-structure-heap.html [자료구조] 힙(heap)이란 - Heee's Development Blog Step by step goes a long way. gmlwjd9405.github.io 해당 글을 보고 작성을 하였습니다! (작성자님 감사합니다 !!) 우선순위 큐 Priority Queue 우선 순위 큐란, 우선순위의 개념을 큐에 도입한 자료구조입니다. 데이터들이 우선순위를 가지고 있고 우선 순위가 높은 데이터들이 먼저 나갑니다. 자료구조 삭..
안녕하세요! 오랜만에 글을 쓰네요 :) 이런 저런 핑계들로 미루어왔다가.. 다시 돌아왔습니다 ^^ 거부해봐야 뭐하겠습니까 ~ 해야죠 ... 본론으로 들어가보겠습니다. 저는 지난번 이어나가던 프로그래머스 스택/큐 부분의 문제를 풀고 있습니다. 덱이 좋다라는것을 익히 들어왔지만, 뭔가 그냥 리스트를 써서도 queue 나 stack 의 형태로 문제를 풀 수 있었기 때문에 귀찮아서 굳이 덱을 쓰지 않았었습니다. 그런데 ... 문제의 난의도가 올라가니, 시간 초과나 효율성 부분에서 큰 차이를 보이는 것을 몸소 느꼈습니다 ...^^ 그래서 오늘은 덱에 대한 정리를 해보겠습니다! dequeue 이름은 큐와 비슷해보입니다. Dequeue 는 A Double-ended Queue 입니다. Double-ended 는 양끝..