전체 글 103

(항해11일차) 220317 알고리즘 6일차

알고리즘 주차의 마지막날이다. 오늘은 알고리즘 테스트가 두 시간 가량 진행되었다. 실제 테스트가 어떻게 이뤄지는지는 모르지만 충분히 진이 빠지는 시간이었다. 특히 문제에서 주어진 분 단위, 시간 단위의 숫자를 계산하는 부분이 복잡하고, 계속 for 반복문을 사용하다보니 중간에 꼬이지 않기 위해 집중하는 것이 어려웠다. 처음 보는 문제를 시험장 환경에서 풀어보니 문제풀이를 꾸준히 해야겠다는 생각만 가득해졌다. 나름 시험이라고 긴장했는지 문제를 풀고 난 후 저녁시간은 평소보다 힘이 빠져서 공부도 하는둥 마는둥 풀어져버렸다. 그동안 친해졌던 알고리즘 스터디 조원들과의 마지막날이 아쉽기도 해 모여서 꽤 오랜시간 이야기도 나눴다. 열심히 하는 조원들을 잘 만나서 배운 점도 많고, 즐거운 분위기의 스터디가 될 수 ..

git 명령어 모음

https://hackmd.io/@oW_dDxdsRoSpl0M64Tfg2g/ByfwpNJ-K https://mi2mic.tistory.com/186 1. 처음 코드 업로드 (로컬에 cra 폴더 만들어서 업로드 하는 경우) cra폴더를 만든 후 깃헙에서 레포지토리 만들어서 그대로 복붙 후 터미널에 붙여넣기 git remote add origin https://github.com/Co-Ji/123.git git branch -M main git push -u origin main (처음 파일 만들어서 업로드 하는 경우 ) 초기화: git init 파일 더하기(add: 모두): git add . 확인: git status 히스토리 만들기("버전이름"): git commit -m "first commit" 깃헙..

(항해10일차) 220316 알고리즘 5일차

알고리즘 주간이 끝나간다. 오늘은 스터디에서 시간이 없어 풀지 못한 문제들을 풀고 남은 시간에는 풀었던 문제들을 다시 보면서 어떻게 풀어야 할지 생각해봤다. 처음 방법과 완전히 똑같은 것도 있었지만 어떤 문제들은 처음 방법보다 더 간단해지는 경우도 있었다. 문제푸는 방식과 관련해서 오늘 튜터님께 질문을 했다. 한 줄 짜리 압축시켜 놓은 답변과 for반복문이나 if함수를 사용한 긴 답변을 비교했을 때 답의 길이는 좋은 알고리즘 풀이와 크게 연관이 없다는 말씀을 들었다. 물론 시간복잡도가 단순한 짧은 풀이는 훌륭하지만 그렇지 않은 경우도 있고, 잘 쓰지 않는 내장함수를 가져다 쓰기도 하기 때문에 오히려 문제의 구조를 파악하는게 훨씬 중요하다. 하지만 내가 쓴 filter 보다 splite를 사용했을 때 시간..

반복에 사용하는 함수 ( while/do~while/for/array.foreach() )

1. while 조건이 참일 때 계속 반복한다. 조건이 거짓이면 넘어간다. statement를 여러개 사용하려면 { } 를 써야 한다. while (condition) {statement} 2. do~while 실행 먼저 되고 조건이 참인지 확인한다. (무조건 한 번은 실행됨) do{ statement} while (condition) 3. for for는 반복횟수를 정하는 경우에 사용한다. for(initialization; condition; final-expression) { statement } - initialization : 카운트할 변수 선언, let은 지역변수, var는 for문과 같은 범위 - condition: 매번 반복할 때마다의 조건, 참이면 statement를 반복, 거짓이면 다음..

Today I Learned 2022.03.16

(항해9일차) 220315 알고리즘 4일차

알고리즘 주차가 어느새 절반넘게 지나갔다. 오늘은 항해에서 준비하신 모의고사에 참여했다. 거창하게 모의고사라고 하기에는 한 문제였지만, 아무 정보도 없는 환경에서 혼자 문제를 푸는 것은 처음이었다. 지난 3일동안 열심히 문제를 풀어서 그런지 다행히 잘 해결한 것 같다. (물론 높은 난이도의 문제는 아니었을 것 같다.) 이렇게 한 번 문제를 풀어보니 알고리즘 문제에 접근하는 방법을 다시 고민하게 되었다. 요즘 조금 자신감이 생기면서, 다른 사람들의 풀이를 보고 더 짧은 코드를 짜고 싶었다. 하지만 어떻게 하면 정답으로 갈 수 있을지 풀이의 과정을 더 정확하게 고민하는게 우선인 것 같다. 이를테면 for를 사용한 반복문이나 if, else 대신 화살표함수, 삼항연산자, reduce, filter, 등등.. ..