목록알고리즘 (2)
NOW OR NEVER
프로그래머스 폰켓몬 문제당신은 폰켓몬을 잡기 위한 오랜 여행 끝에, 홍 박사님의 연구실에 도착했습니다. 홍 박사님은 당신에게 자신의 연구실에 있는 총 N 마리의 폰켓몬 중에서 N/2마리를 가져가도 좋다고 했습니다.홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 [3번, 1번, 2번, 3번]이라면 이는 3번 폰켓몬 두 마리, 1번 폰켓몬 한 마리, 2번 폰켓몬 한 마리가 있음을 나타냅니다. 이때, 4마리의 폰켓몬 중 2마리를 고르는 방법은 다음과 같이 6가지가 있습니다.첫 번째(3번), 두 번째(1번) 폰켓몬을 선택첫 번째(3번), 세 번째(2번) 폰켓몬을 ..
자료구조와 알고리즘이란? 프로그래밍은 요리와 비슷하다(요리 : 재료선택-도구선택-레시피-요리완성) 재료 : 데이터 도구 : 자료구조 레시피 : 알고리즘 요리 : 소프트웨어 요리사 : 개발자 요리를 먹는 손님 : 소프트웨어를 이용하는 이용자 자료구조 + 알고리즘 = 프로그램 자료구조 메모리를 효율적으로 사용하며 메모리를 빠르고 안정적으로 데이터를 처리하는 것이 궁극적인 목표이다. 구조들은 상황에 따라 유용하게 사용될 수 있도록 만들어져 있다. 그래서 어떤 상황에서는 느리고 불안정적일 수 있다. 상황에 맞는 올바른 자료구조를 선택할 수 있는 능력이 필요하다 stack, queue, graph, tree 등이 해당된다. 알고리즘 특정 문제를 효율적이고 빠르게 해결하는 것이 궁극적인 목표이다. 정해진 일련의 절..