본문 바로가기

전체 글1040

[자바] 백준 19953 - 영재의 산책 (java) 목차 문제 : boj19953 필요 알고리즘 정수론, 비둘기집의 원리 비둘기집의 원리로 풀 수 있는 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 실제로 시뮬레이션을 돌려보게 된다면, O(t) 이므로 시간초과가 나게 된다. 따라서 시간을 줄일 아이디어를 찾아야 하는데, 내 경우에 비둘기집의 원리로 시간을 줄였다. n+1마리의 비둘기가 n개의 비둘기집에 들어간다면 자명하게도 최소 1개 이상의 비둘기집은 2마리 이상의.. 2024. 3. 18.
[디자인 패턴의 아름다움] 2. 객체지향 프로그래밍 패러다임 - 2.3~2.4 정리 스터디 메인 페이지 목차 - ☆ 표시가 붙은 부분은 스터디 중 나온 얘기 혹은 제 개인적인 생각이나 제가 이해한대로 적어놓은 것으로, 책에 나오지 않는 내용입니다. 따라서 책에서 말하고자 하는 바와 다를 수 있습니다. - 모든 이미지의 출처는 디자인패턴의 아름다움(왕정 저) 책 입니다. 2.1~2.2 정리 글 : 링크 2.3 객체지향 분석, 객체지향 설계, 객체지향 프로그래밍을 수행하는 방법 ☆ 예제를 가지고 설명하는 부분이기도 하고, 2.3에 나온 예제가 그리 좋은 예제가 아니라고 생각하다보니, 내용 정리 시 책에 쓰여진 말을 제 생각대로 많이 축약 시켰습니다. 그래서 제가 잘못 이해한 경우, 2.3의 내용정리 부분은 책이 전달하고자 하는 내용과 다를 수 있습니다. 예제 소개와 난이도 분석 HTTP 인.. 2024. 3. 10.
[수강평] 빠르게 git - 핵심만 골라 배우는 Git/Github 강의 링크 : 인프런 이전에 '개발자 윈도우 세팅 (WSL 서브 리눅스, IntelliJ, vscode, git 등)' 라는 글을 쓸때만 해도 인텔리제이에 콘솔창 붙인거 이쁘게 꾸며서 CLI 환경으로 git을 자주 썼었다. 그러다가 그냥 IDE에서 제공하는 기능으로 git을 쓰게 되었고, 현재는 CLI 환경에서 git 명령어를 많이 까먹었다. 그렇다고 git documentation 보기엔 너무 과하기도 하고, 기본적으론 IDE에서 제공하는 기능 계속 쓸꺼긴 한데, 그래도 CLI 명령어도 잊고싶진 않으니까 기본 명령어들만 다시 리마인드 해보자는 생각에 구매해서 보게 되었다. 강의는 딱 필요한 git 관련 명령어들에 대해 잘 설명해줘서 좋았다. 원격 저장소(github)도 함께 설명하다보니 git을 처음 .. 2024. 3. 10.
[수강평] 떠먹는 머신러닝/딥러닝 강의 링크 : 인프런 몇일전에 '비전공자/고등학생을 위한 인공지능 기초와 커리어 조언'라는 강의를 봤었다. 그 사이에 파이썬(파이썬 거의 처음)으로 머신러닝하는 간단한 예제는 한번 따라해보았다. 근데 취향상 가성비 안나와도 배경을 먼저 알고 가는걸 좋아해서, 이번에도 기본 배경을 알기위한 강의를 하나 더 들어보게 되었다. 인공지능을 아예 모르는 상태에서, 전체적인 틀을 잡기에 좋은 강의였다. 얕더라도, 복잡하지 않게 딱 필요한 내용만 ppt에 적혀있고, 모두 손글씨 및 직접 그린 그림이라 엄청 편하게 볼 수 있었다. 직전에 들었던 강의보다 훨씬 듣기 편했어서, 이걸 먼저 들었으면 이전에 봤던 강의를 듣기 더 좋았을 것 같다는 생각이 들었다. 아무튼 대강 배경은 안 것 같으니 언제가 될진 모르겠지만 이후로.. 2024. 3. 9.
[수강평] Java/Spring 주니어 개발자를 위한 오답노트 강의 링크 : 인프런 반차쓰고 무슨겜하지 생각하다가 일단 점심 먹으면서 이전에 사놓고 안봤던 인프런 강의가 보여 보기 시작했다. 시간 짧은거 보고 1.5배속 걸고 대충 봐야지! 느낌으로 시작했는데, 왠걸 예상치 못한 좋은 강의에 바로 속도 낮추고 필기하면서 보기 시작하니 강의 시간의 2배는 넘게 걸린 것 같다 ㅋㅋ. 강의가 맘에 들어 안쉬고 지금까지 풀로 보게되버렸다. 결국 내 반차는 날아갔지만, 그럼에도 아까운 기분은 없다. 난이도는 개인적으로 섹션2 OOP 부분이 가장 어려웠던 것 같다. 그럼에도 듣기 좋았다. 사실 섹션1은 대강 보고 있었는데, 섹션2부터 각잡고 보기 시작한 것 같다. 테스트쪽 설명 또한 전반적으로 맘에 들었다. 내 경우에도 통합 테스트가 잘 이해가 안됬는데, 그 부분도 집어줬고, .. 2024. 3. 6.
[수강평] 비전공자/고등학생을 위한 인공지능 기초와 커리어 조언 강의 링크 : 인프런 얼마전 AI쪽 석사중인 친구와 술 마시며 인공지능 분야와 관련된 얘기를 듣다보니 이 분야가 갑자기 궁금해졌다. 난 관련 지식이 거의 없었으므로, "내가 뭘 모르는지 모르니, 그냥 얇고 넓게 살펴볼만한 강의가 있으면 좋겠다" 싶었다. 그래서 가장 쉬워보이는 제목의 강의를 구매해서 보게 되었다. 비전공자와 고등학생을 위한 강의라니 나에게 딱이었다. 일단 초반부 첫인상은 솔직히 말해 별로긴했다. 뭔가 생각이 정리되지 않고 강의하는 느낌이 초반부 강의분에 있었고 (내가 이 분야를 모르니 잘 못알아들어서 그럴수도 있다. 그리고 초반부만 그렇고, 나머진 괜찮았다.), 말로도 설명을 해주시니 상관은 없지만 그렇다곤 해도 너무 글자를 못알아보게 적으신다. 글자를 알아보기 위해 말하는걸 다시 들어야.. 2024. 3. 5.
[디자인 패턴의 아름다움] 2. 객체지향 프로그래밍 패러다임 - 2.1~2.2 정리 스터디 메인 페이지 목차 - ☆ 표시가 붙은 부분은 스터디 중 나온 얘기 혹은 제 개인적인 생각이나 제가 이해한대로 적어놓은 것으로, 책에 나오지 않는 내용입니다. 따라서 책에서 말하고자 하는 바와 다를 수 있습니다. - 모든 이미지의 출처는 디자인패턴의 아름다움(왕정 저) 책 입니다. CHAPTER 02. 객체지향 프로그래밍 패러다임 ☆ 패러다임쪽은 공식적인 정의가 명확하지 않은 부분들이 많다. 즉, 사람마다 생각이 다른 부분이 많고, 따라서 내 생각을 적기위한 사족이 좀 많이 들어갔다. 그 부분에 남들과 생각이 다른 부분도 있을꺼고, 내가 현재 잘못 생각하고 있는 것도 있을꺼다. 결국 답은 없고, 토론이 필요한 부분이라 생각된다. 아무튼 그러니 책 내용 정리만을 보고 싶다면 '☆'이 안붙어 있는 항목.. 2024. 3. 3.
[세미나] 개발자가 질문하는 방법 개발자가 질문하는 방법 세미나 진행했던 pdf 입니다. 제가 생각하는 '질문하는 방법'에 대해 다룹니다. ppt의 우측 상단 '새 탭에서 보기' 를 누르시면 크게보거나 pdf를 다운받아 보실 수 있습니다. 2024. 2. 28.
자바 Integer 캐싱에 대해 (Java IntegerCache, Autoboxing) 간단한 자바 문제를 만들어달라는 요청을 받았다. 장난을 섞어서 이전에 알고리즘 문제를 풀 때 이슈가 있었던 상황을 문제로 만들었다. (이하의 코드 결과는 자바 실행 시의 옵션이나 구현에 따라 달라질 수 있다. 아무런 옵션을 넣지 않고, 이하의 코드만 실행한 경우를 가정한다.) Integer a = 100; Integer b = 100; Integer c = 200; Integer d = 200; System.out.println(a == b); System.out.println(c == d); 어찌보면 당연해보이는 문제지만, 은근 주변에 시켜보면 답이 많이 다르게 나올꺼다. 1. 객체끼리의 주소값 비교이므로 false, false 라는 답변 -> 훌륭하다. 2. 에이 당연히 true, true지 -> 좀.. 2024. 2. 27.
[자바] 백준 1953 - 팀배분 (java) 목차 문제 : boj1953 필요 알고리즘 이분 그래프 (bipartite graph), 그래프 탐색 (BFS, DFS 등) 이분 그래프에 대한 개념이 있다면 좀 더 쉽게 풀 수 있는 그래프 탐색 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 2년전에 못 푼 기록이 있어 풀어봤다. 별 어려움 없이 바로 푼걸 보면 발전은 있었나보다. 2년전엔 HashSet을 사용해 넣을 때 마다 겹치는게 있는지 검색해본 것 같다. .. 2024. 2. 26.