[자료구조] 재귀(Recursive)

재귀(Recursive) 적절한 데이터를 저장하는 방법 및 구조를 공부하는 자료구조(Data Structure), 효율적인 방법으로 문제를 푸는 알고리즘(Algorithm)을 공부하기 위해서는 재귀에 대한 이해가 필요합니다. 프로그래밍에서 재귀는 ‘주어진 문제를 해결하기 위하여 하나의 함수에서 자신을 다시 호출하여 작업을 수행하는 방식’이라 정의합니다. 볼드체로 표기한 ‘하나의 함수’와 ‘자신을 다시 호출’하는 독특한 구조 덕분에 재귀는 재밌는 표현이 많습니다. 1 2 3 4 5 6 7 8 어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다. "재귀함수가 뭔가요?" "잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어....

February 22, 2021 · 5 min · Pacientes

[리뷰] 이것이 C#이다 (개정판)

이것이 C#이다 (개정판) C/C++, Python을 주로 사용하는 개발자 입장에서 C# 언어를 처음 공부해보았습니다. 임베디드 환경에서 주로 개발을 진행하다 보니 Java나 C# 같은 가상머신 기반의 언어들을 접할 기회가 부족하였습니다. C#도 .Net Core 버전에 따라 리눅스/MacOS 환경에서 동작 가능합니다. C#은 Windows 환경에서만 동작한다고 생각했던 제가 얼마나 C#을 모르고 있었는지 새삼 깨닫게 되었습니다. 따라서 이것은 C#이다 책을 읽으면서 C/C++과 문법적으로 어떤 부분이 다르고, 성능적으로 어떤 차이가 있는지를 주로 생각하며 보았습니다. 800 페이지가 넘는 분량의 이 책은 프로그래밍을 처음 공부하는 사람에게는 C# 언어의 기본서로 공부하기 적합하다 느꼈습니다....

February 20, 2021 · 3 min · Pacientes

[알고리즘] 2021 카카오 코딩테스트 메뉴 리뉴얼

[2021 카카오] 메뉴 리뉴얼 2021 카카오 블라인드 공채 코딩테스트 메뉴 리뉴얼 문제 풀이입니다. 본 문제는 프로그래머스 홈페이지에서 직접 풀어볼 수 있습니다. 메뉴 리뉴얼 문제 설명 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 새로운 메뉴를 제공하기로 결정했습니다. 어떤 단품메뉴들을 조합해서 코스요리 메뉴로 구성하면 좋을 지 고민하던 “스카피"는 이전에 각 손님들이 주문할 때 가장 많이 함께 주문한 단품메뉴들을 코스요리 메뉴로 구성하기로 했습니다....

February 15, 2021 · 3 min · Pacientes

[알고리즘] 2021 카카오 코딩테스트 순위 검색

[2021 카카오] 순위 검색 2021 카카오 블라인드 공채 코딩테스트 순위 검색 문제 풀이입니다. 본 문제는 프로그래머스 홈페이지에서 직접 풀어볼 수 있습니다. 순위 검색 문제 설명 [본 문제는 정확성과 효율성 테스트 각각 점수가 있는 문제입니다.] 카카오는 하반기 경력 개발자 공개채용을 진행 중에 있으며 현재 지원서 접수와 코딩테스트가 종료되었습니다. 이번 채용에서 지원자는 지원서 작성 시 아래와 같이 4가지 항목을 반드시 선택하도록 하였습니다. 코딩테스트 참여 개발언어 항목에 cpp, java, python 중 하나를 선택해야 합니다....

February 5, 2021 · 6 min · Pacientes

[알고리즘] 2021 카카오 코딩테스트 신규 아이디 추천

[2021 카카오] 신규 아이디 추천 2021 카카오 블라인드 공채 코딩테스트 신규 아이디 추천 문제 풀이입니다. 본 문제는 프로그래머스 홈페이지에서 직접 풀어볼 수 있습니다. 신규 아이디 추천 문제 설명 카카오에 입사한 신입 개발자 네오는 “카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. 네오에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다. 다음은 카카오 아이디의 규칙입니다....

February 5, 2021 · 4 min · Pacientes