반응형

분류 전체보기 183

[sw 사관학교 정글] DailyJungle day-26

알고리즘 마지막 주차 다이나믹 프로그래밍과 그리디가 시작되었다. 악명높다는 말만 들었는데, 실제로 풀어보니 환장할만큼 어마무시한 주제들이였다. 다이나믹 프로그래밍은 이름만 들으면 코드가 수백줄 되는것 같은 느낌인데 실상은 전혀 반대로 메인 코드는 3줄 5줄로 끝나는 알고리즘이라서 더 어이가 없었다. 3줄 5줄인데 왜 악명이 높냐? 모든 개념의 집약체로 함축적인 의미를 이해해야 하기 때문이다. 반대로 그리디의 경우 진짜 이름처럼 탐욕적이다. 그냥 그 문제에서 요구하는 탐욕을 만족시킬 수 있는 최고의 방안을 도출해내야 하는 것이다. 진정한 ‘을'의 입장에서 요구사항을 만족시켜줘야 한다. 속상하다 이번주는 B반 고수2분과 한 조가 되어 진행을 하고 있다. 첫 날 코드리뷰를 진행하는데, 아이디어 뿐만 아니라 숏..

[sw 사관학교 정글] DailyJungle day-25 & 3주차 회고

4주차 마지막 알고리즘 주차 발제 컴퓨터 시스템 3장 C언어와 연관 기계어 수준에서 데이터 스트럭처를 쓸수 있는게 거의 없다 좀더 생각을 하며 읽기 3주차 회고 알고리즘 과정의 75% 3주가 지났다. 매주 조가 바뀌면서 새로운 느낌이 있는데, 이번주의 느낌을 표현하면 ‘도전 그리고 성장’ 이다. 이번주는 유독 중요한 주제인 DFS, BFS가 주제였다. DFS, BFS는 학부 과정중에도 여러번 접하기는 했지만, C언어로 구현 정도의 레벨 까지만, 코딩테스트에 활용할 레벨까지는 되지 않았다. 3주의 과정중 이번주가 유독 자신감도 많이 얻었고, 어려움을 많이 극복한 느낌이 많이 들었던 주간이였다. 성장을 함께 했던 팀원들에게 이 기회를 빌어 고마움을 전한다. 목요일은 항상 설레임과 긴장이 함께하는 날이다. 오..

[sw 사관학교 정글] [WEEK03] WIL 03주차 개발일지

[BFS, DFS, 위상정렬] 그래프 탐색 기본 그래프 탐색은 그래프 안에 어떤 버텍스들이 있는지 알고 싶을 때 사용 여러 노드(node or vertex)들이 간선(edge)으로 연결된 추상 네트워크 V = {a,b,c,d} / E = {{a,c},{a,d},{a,b},{b,d},{c,d}} - 양 방향 그래프 이므로 간선의 집합에서 역도 성립한다. 그래프는 방향이 있는 그래프(directed)와 방향이 없는 그래프(undirected) 방향이 있는 그래프는 간선에 방향이 지정되어 있지 않아, 서로 인접(adjacent)해 있으며, 이웃(neighbor)이라함 차수(degree) 한 노드에 이어져 있는 간선의 수 차수가 0인 노드는 고립(isolated)되었다고 부름 방향이 없는 그래프는 입력 차수(i..

[sw 사관학교 정글] DailyJungle day-24

오늘 스터디를 하며 처음으로 코딩테스트 처럼 진행을 했다. 문제 분류를 전혀 보지 않고 진행을 했는데, 대략적으로 어떻게 해야하는지 그려져서 좋을뻔 했던 찰나, 브루트포스로는 시간복잡도가 무조건 걸린다는 것을 알게되었고, 그렇지만 시도는 해보자 하고 브루트 포스로 진행을 했다. 더 절망적인것은 브루트포스로 또한 구현을 하지 못했다는 자괴감과 풀이를 보고나는 5줄 정도만 되는 아주 간단한 풀이여서, 기분이 팍 상해부렀다. 5줄을 생각해내기 위해서 얼마나 많은 생각을 했을지 느껴지는 다른 사람들의 정답들이였다. 실버원정대(아직까지도 가제) 모집 공고를 올리자 마자 블로그를 보고 왔다는 멋쟁이가 있어서 아마 실버 원정대를 진행하게 될 것같다. 2개의 스터디는 사실 몸도 시간도 무리지만, 내 실력이 더 무리(장..

[파이썬] 예외처리 & pass, continue, break

코딩테스트 준비를 하며 다른 사람들의 코드를 참고하여 공부를 하다 보면 excep, pass, continue 등 과 같이 나는 자주 사용하지 않지만 유용하게 사용하는 분들이 있어, 이번기회를 통해 정리하고 나 또한 활용도를 높일 수 있도록 하기 위해 글을 작성하게 되었다. 파이썬을 통해 코드 작성을 하다보면 오류를 무시하고 싶을때가 있는데, try, except를 통해 유용하게 사용할 수 있다. 예외처리 try : 실행코드(오류가 발생하나 보자!) except : 예외처리 코드(오류가 발생하면 이걸 실행해줘!) else : 예외처리할 오류가 없을때 실행되는 코드 finally : 오류 발생여부 상관 없이 무조건 실행되는 코드 raise : 오류를 일부러 발생시키기 입력값을 받을 때 except 활용 예..

개발 2022.04.20

개발자 협업 필수 개념 git & github

기존에 notion을 활용해서 기록을 했기 때문에, 설명이 부족한 부분들이 있다 추후 기본적인 개념은 이 글에 추가 및 수정을 진행할 예정이고 매우 중요하다고 생각하는 내용들에 대해서는 추가적으로 게시글 포스팅을 진행하겠다. 기본개념 git init을 하면 .git 이라는 파일이 생김 → 로컬 저장소( 내가 만든 버전 정보 - 원격저장소 주소등이 저장) 한 폴더에 하나의 로컬 저장소만 유지 commit( = 버전: 하나의 최종 코드의 모음) git commit -m “123123” // 123이라는 버전을 만듬 로컬저장소, 원격저장소 push 로컬저장소 → 원격저장소 git remote add origin http://github.com/dongury1114/name git push origin mast..

개발 2022.04.20

[sw 사관학교 정글] DailyJungle day-23

실버원정대(가제)를 고민중에 있다. 정글이 3주가 진행된 현재 어느 정도 실력이 나누어 져있고, 다들 각자의 방식으로 성장하고 있다. 오늘 오후 공부가 잘되지 않아, 1주 2주차에 진행했던 주제들의 다른 문제들을 풀어보았다. 당시에는 어려운 문제들도 스트레스를 받고, 시도하는 것 조차 힘들었던 난이도의 문제들이 보기보다 쉽게 다가왔다. 진행하고 있는 알고리즘 스터디가 고수들과 함께 하다보니 따라가기 벅차고, 잘되지 않을 때가 있어 미안한 마음도 너무 많이 들었는데, 따라가며 성장하기 위해서 실버원정대를 조직할까 한다. 현재 진행중인 문제들의 난이도는 골드 상위권 문제인데, 실버문제도 어려울 때가 있어, 실버부터 제대로 정복하고 골드 또한 이겨내기 위해서 공대원들을 모집 준비중에 있다. 매일매일 문제 카테..

반응형