Lecture Note

우선순위 큐가 뭘까 🤔? priority queue는 힙이라고도 한다. 특정 원소 중에서 최대 우선순위를 가지는 값을 효율적으로 구하려고 고안된 자료구조이다. 우선순위 큐에서는 최대 우선순위 값 이외의 원소는 알 수 없다. 내부적으로 이진 트리를 사용한다. 우선순위 큐 내의 원소의 개수를 N이라고 했을 때, 원소 삽입과 최대 우선순위 값 뽑기 두 연산을 모두 O(logN)의 시간복잡도를 가진다. (빠르다!) 우선 순위 큐를 사용해보자 먼저 무작위로 섞여 있는 원소들은 모두 우선순위 큐에 넣는다. 최대 우선순위 값을 계속해서 뽑으면 원소가 정렬되고 시간복잡도가 O(N logN)이 됨 → 힙 정렬 자바에서는 java.util 패키지의 PriorityQueue 제네릭 클래스를 사용한다. add() : 원소를 ..
문제 설명 숫자나라 기사단의 각 기사에게는 1번부터 number까지 번호가 지정되어 있습니다. 기사들은 무기점에서 무기를 구매하려고 합니다. 각 기사는 자신의 기사 번호의 약수 개수에 해당하는 공격력을 가진 무기를 구매하려 합니다. 단, 이웃나라와의 협약에 의해 공격력의 제한수치를 정하고, 제한수치보다 큰 공격력을 가진 무기를 구매해야 하는 기사는 협약기관에서 정한 공격력을 가지는 무기를 구매해야 합니다. 예를 들어, 15번으로 지정된 기사단원은 15의 약수가 1, 3, 5, 15로 4개 이므로, 공격력이 4인 무기를 구매합니다. 만약, 이웃나라와의 협약으로 정해진 공격력의 제한수치가 3이고 제한수치를 초과한 기사가 사용할 무기의 공격력이 2라면, 15번으로 지정된 기사단원은 무기점에서 공격력이 2인 무..
· Lecture Note
우연한 기회로 책을 읽게 되어 써보는 글입니다 :) 1. 책의 목표 우선 책을 주욱 읽어보니 책의 목표가 다른 언어를 사용하던 개발자가 Go 언어를 접하기 쉽도록 하는데에 초점을 두고 있다. 왜이렇게 생각하냐면, 책안에서 계속해서 다른 언어와의 비교를 통해서 어떤 점이 다른지를 알려준다. 또한 이러한 비교를 통해서 Go가 가진 명확한 장점을 뽐내는 느낌을 받았다. C, Java, Swift등 다양한 언어군들과의 비교를 사용하기 때문에 더 많은 언어에 대해 공부해본 사람일수록 더 Go에 대해 이해하기 쉬울 것 같다. 2. 책의 구성 1. 단원 시작 전에 짚고 넘어가면 좋을만한 부분을 소개해준다. 그리고 단원끝에는 스스로 정리할 수 있도록 Q가 정리되어있음. 그래서 내가 얼마나 대충 읽었는지 알 수 있었음 ..
평소 아침에 즐겨보는 개발자 블로그 메일링 서비스를 보다가, 여기에 내 블로그도 등록하고 싶다!는 생각이 들었다. 이 후 바로 등록해버린 행동이 제법 빠른 나.. 블로그를 등록한 김에 블로그 등록법을 공유해 보려고 한다. 아래는 Dev-blog 의 깃허브 주소이다. https://github.com/awesome-devblog/awesome-devblog GitHub - awesome-devblog/awesome-devblog: 어썸데브블로그. 국내 개발/기술 블로그 모음(only 실명으로). 어썸데브블로그. 국내 개발/기술 블로그 모음(only 실명으로). Contribute to awesome-devblog/awesome-devblog development by creating an account o..
soohey
'Lecture Note' 카테고리의 글 목록