전체 글
-
Concept : 재귀(Recursion)의 기본 개념 이해하기각종 학습 요약/Concept 2022. 5. 24. 11:08
재귀(Recursion)의 기본 개념 이해하기 이 글에서는 기존에 반복문으로 해결하던 문제를 재귀적 사고로 해결할 수 있다는 것을 알아봅니다. 재귀함수를 구성하는 기본적인 논리와 재귀함수를 구현할 때의 주의점에 대해 짚어봅니다. 재귀적(recursive) 호출이란? 재귀를 wikipedia를 찾아보면 자기 스스로를 참조하는 것이라고 정의되어있습니다. 스스로를 호출하는 함수(메서드)라고 보아도 무방할 것 같습니다. 왜 스스로를 호출하느냐? 그것은 문제가 해결될 때까지 특정 동작을 반복하기 위해서입니다. 근데, 여기쯤 왔다면 우리는 이미 반복을 위한 도구를 가지고 있죠. for와 while로 대두되는 반복문입니다. 반복문도 반복을 위한 것이고, 재귀도 반복적인 동작을 위한 것이라면 둘의 차이는 무엇이 있을까..
-
TIL: 백엔드 부트캠프 20일차 (w/코드스테이츠)Today I Learned & WIL, MIL 2022. 5. 23. 17:59
220523_TIL 1. TIL 페어 활동 : Java 파트 학습 내용을 가지고 페어님과 면접 실습 라이브 세션 : 부트캠프 33기 선배님의 라이브 세션 1개월차 회고 블로깅 오늘은 학습 평가를 쉰다. 오늘은 아침 면접실습 때문에 오전 내내 정신이 없었다. 개인적으로 면접 자체는 아무렇지 않은데, 면접 실습하는 내용을 촬영해야 한다는게 무지 긴장되었다. 진짜 과장 하나도 안 보태고 핫식스 4캔 정도 마신 느낌이었다. ㅋㅋ... 손이 달달 떨려가지고 긴장하고 있었는데(답변할 문제를 골라야 하는데 문제도 못 고른 상태였다 ㅋㅋ) 생각해보니까 지금까지 공부한 내용은 전부 블로그에 정리/요약 해놨었던 것이다. 개이득! 그래서 다행히 평정심을 찾고 겨우 잘 마쳤다. 오후에는 라이브세션 듣고, 못 먹은 점심 늦게 ..
-
백엔드 부트캠프 1개월차 회고 (w/코드스테이츠)회고 2022. 5. 23. 16:32
백엔드 부트캠프 1개월차 회고 (w/코드스테이츠) 한 달이란 시간이 정말 빠르게 지나갔습니다. 이 글 제목이 1개월차 회고라는게 너무 놀라운데요. 그만큼 짧은 시간 많은 경험이 있었던 것 같습니다. 한 달간 체험하며 좋았던 점, 느꼈던 감정, 마음가짐, 생각들을 고스란히 옮겨보려고 합니다. 무엇 무엇을 했다를 나열하기 보다는(그런건 이전 회고나 TIL에 이미 많이 써놔서), 그냥 느낀점들을 의식의 흐름대로 흘려보낼 것 같아요. 따로 양식이 없어서 좀 횡설수설한다고 느끼실지도 모르지만 최대한 솔직하게 적으려 노력했나보다 하고 양해해주시면 감사하겠습니다. 부트캠프에 지원하면서 적지 않은 나이에 비전공자 개발자 지망생으로 코드스테이츠 백엔드 부트캠프 과정을 지원했습니다. 근데 솔직히 말해서, 코드스테이츠란 기..
-
한 달 간의 페어 프로그래밍 회고 (w/코드스테이츠)회고 2022. 5. 23. 00:24
한 달 간의 페어 프로그래밍을 회고하면서 백엔드 부트캠프 한 달 차 회고에 작성할 꼭지들을 정리하다 보니까 페어에 대해 할애할 분량은 없을 것 같아서 여기에 따로 한 페이지 정도 분량으로 남겨보려고 한다. 가장 많이 느낀 건 내가 말 실수를 생각보다 많이 한다는 사실이다. 입만 열면 폭탄인 수준은 아니지만, 스스로의 발언에 0.5초 뒤에 당황한 순간들이 몇 번 있었다. 그래서 나중에는 아예 조심스럽게, 무조건 페어의 의견을 먼저 묻고 그 의견을 우선시하는 쪽으로 갔는데 그것도 마냥 답은 아닌 것 같다는 생각이 들었다. 현업에서도 페어 프로그래밍을 한다던데 어떻게 하는 걸지 참 궁금하다. 일단 장점부터 말해보면 다양한 사람을 만날 수 있어서 좋았다. '같은 동기 맞나?' 싶을 정도로 정말 본받고 싶은 분도..
-
모각코 PS / 카카오 2020 신입 블라인드 채용 1차 문자열 압축PS 2022. 5. 21. 16:47
모각코 PS스터디 왜인지 모르겠는데 PS는 하고 나서 포스팅 하는 걸 자꾸 까먹는다. 이번주 스터디 한 세 문제를 차례로 포스팅해보려고 한다. 문제와 풀이 문제 링크 : 카카오 2020 신입 개발자 블라인드 채용 1차 코딩 테스트 - 문자열 압축 해당 문제는 프로그래머스에서도 풀어볼 수 있다. 👇펼쳐서 코드와 해설 읽기 문자열 카테고리의 문제다. 로직 자체는 매우 직관적으로 떠올릴 수 있다. 머릿속으로 비교하는 그림이 대강 그려졌다. 대충 이렇게. 딱 봐도 뭔가 반복문을 겹겹이 돌아야할 것 같은 기분이 든다(표본 길이가 최대 1000이니까 낭낭히 돌아도 문제 없다). 그래서 코드를 짜기 전에 '어떤 반복문을 / 어떤 범위로 / 얼마만큼씩 키워나가면서' 돌 것인지 정리를 하고 구현을 시작했다..
-
모각코 PS스터디 / 백준 1783 병든 나이트PS 2022. 5. 21. 16:44
모각코 PS스터디 왜인지 모르겠는데 PS는 하고 나서 포스팅 하는 걸 자꾸 까먹는다. 이번주 스터디 한 세 문제를 차례로 포스팅해보려고 한다. 문제와 풀이 문제 링크 : 백준 1783번 - 병든 나이트 👇펼쳐서 코드와 해설 읽기 이 문제도 역시 그리디(greedy) 카테고리의 문제다. 얼핏 보면 탐색 같지만, 표본 수(2,000,000,000)를 보면 탐색으로 했을 때 무조건 타임아웃이 날 거란 걸 생각해볼 수 있다. 충족할 조건은 2가지다. 이동횟수를 최대화할 것. 이동방식을 충족할 것. (밟은 발판 갯수가 5개 이상 시에만) 나이트의 이동경로는 다음 네가지다 2U 1R 1U 2R 1D 2R 2D 1R 네 가지 이동을 완수하는 케이스를 먼저 생각해보기로 했다. 네 가지 이동을 완수하고 나서도 시작점에 ..
-
모각코 PS스터디 / 백준 2875 "대회 or 인턴"PS 2022. 5. 21. 16:43
모각코 PS스터디 왜인지 모르겠는데 PS는 하고 나서 포스팅 하는 걸 자꾸 까먹는다. 이번주 스터디 한 세 문제를 차례로 포스팅해보려고 한다. 문제와 풀이 문제 링크 : 백준 2875번 - 대회 or 인턴 👇펼쳐서 코드와 해설 읽기 그리디(greedy) 카테고리의 문제다. 팀을 만드는 데에는 여자2와 남자1이 필요하고, 인턴은 아무나 1이 필요하다. 일단 팀이 많은게 좋다고 하니까, 가능한 팀을 최대한 구성해 놓고, 그다음에 인턴갈 인원을 차출한다. 인턴 갈 사람수가 부족하면 팀을 깨야하는데, 한팀씩 깨서 부족한 만큼만 팀을 깨야 한다. 그리고 결과를 출력해주면 된다. import java.util.Scanner; public class Main { public static void main(String..
-
TIL: 백엔드 부트캠프 19일차 (w/코드스테이츠)Today I Learned & WIL, MIL 2022. 5. 20. 18:27
220520_TIL & 학습 평가 1. TIL 페어 프로그래밍 : 스트림 & 람다 실습 Java: 파일입출력, 스레드, JVM 미루고 미룬 3주차 회고 업로드. 2. 학습 평가 학습 난이도: RPE 6 학습 집중도: RPE 5 습득 수준: RPE 5 👇참고: 수준을 정하는 주관적 척도 * 긍정적인 경우는 어려움이 아니라 반대로 생각했다. * 0: 휴식 / 1: 아주 아주 쉬움 / 2: 쉬움 * 3: 보통 / 4: 어떤 부분은 조금 어려웠음 * 5: 어려움 / 6: 노력해도 모르겠는 부분이 많다 / 7: 너무 어려움 * 8: 못 따라가겠어... 노력해도 모르겠고, 뭘 봐야할지도 모르겠어.. 흰건 종이고, 검은건 글자다... * 9: 이제 진짜 더는 무리다. 누가 알려줘도 모르겠어. * 10: (그냥 물리적..