day27_수학 알고리즘

초록꼬마·2022년 9월 28일
0

bootcamp_Learning

목록 보기
28/35

📗 오늘의 학습 topics


🌿 순열(permutation)

1. 개념

2. 구현

2-a. 반복문

2-b. 재귀

중복순열 구현 시와 달리, 대상 요소를 방문했는지 여부 관리 필요


🌿 조합(combination)

1. 개념

2. 구현

2-a. 반복문

2-b. 재귀


🌿 최대(greatest)공(common)약수(divisor)

1. 개념

2. 구현 - 유클리드 호제법


🌿 제곱근

1. 개념

2. 구현 - 바빌로니아 법의 점화식

점화식(recurrence formula)


💡 생각해보기

  1. 코딩테스트 플랫폼에서 여러 문제 풀어보기
  2. 자주 사용하는 알고리즘의 템플릿화 + blogging

🍀 오늘의 소감

  1. '페어 프로그래밍 대상 문제들을 미리 파악하고 참여해야지' 하는 다짐을 이번에도 지키지는 못했다. 대신 문제는 간략히만 보고, 그 때 느꼈던/파악한, 문제 풀이에 필요한 개념들((중복)순열/조합 개념 및 알고리즘, 재귀 구현 코드 등)을 미리 조금 더 준비해갔다.
  2. 페어님과 (오랜만에) 1문제씩 드라이버-네비게이터 역할을 나눠서 진행했는데, 나는 개인적으로 드라이버-네비게이터 방식이 참 좋은 것 같다. 왜냐하면 나는 페어님의 사고 과정과 문제 접근 방식이 무척 궁금하고 재미있고 많이 배우는데, 역할 분담을 해서 진행할 때 조금 더 자연스럽게 이런 부분에 대해 소통할 수 있게 되기 때문인 것 같다
  3. 결과적으로도 시간과 우리 각자의 역량을 최대한 활용해서 기대했던 것보다 더 많은 문제를 해결해서 뿌듯했다.
  4. 하지만 순열 재귀 알고리즘을 내가 정확히 이해한 건 아니었다. 인텔리제이의 디버깅 툴도 재귀함수 호출의 return의 정체를 이해하는 데 아직 도움을 주지는 못했다. 교육엔지니어님께서 설명하실 때 사용하시는 방식대로, 재귀 호출 시마다 브라우저 창을 새로 띄우고 관련 변수 값들의 변화를 메모하며 흐름 파악하는 작업을 꼭 해봐야겠다.
  5. 수학은 나에게 여전히 로망이며, 내가 좋아하는 컴퓨터로 (순수수학에서와는 조금 다른 관점/접근이겠지만) 한 걸음씩 다가갈 때, 그리고 컴퓨터를 공부하며 수학을 조금 다른 관점으로 이해하고 조금 더 알게 될 때, 무척 기쁘다. 앞으로도 수학과 컴퓨터와 친하게, 더 깊이, 지내고 싶다 💚
profile
green piano rabbit

0개의 댓글