(군에서) 알고리즘 공부를 해보니

땡칠·2021년 3월 19일
0

알고리즘

목록 보기
1/16
post-thumbnail

(군에서) 알고리즘 공부를 해보니

계기

최근 알고리즘 문제해결 전략(종만북)을 공부하고 있다.
지금까지는 그냥 만나는 문제만 풀었고 분류와 체계를 가지고 공부할 생각은 못해봤다.
그렇게 간절한 건 아니었을지도 모른다.
뭘 공부해야 하는지도 모르고 그냥 공부하고 정리하고 까먹고 다시보고 이렇게 공부 했었다.
그러다 "이렇게는 고일수가 없겠다" 라는 생각이 들었고, 큰 틀을 알고, 하나씩 격파해나가겠다는 생각으로 책을 사서 공부를 시작하게 되었다.
다행히 지금까지의 방식이 아주 효과가 없지는 않았는지 책을 읽는 것은 수월한 편이다.
틈나는 대로 공부하고 있는데 환경이 아주 제한적인 만큼 더 간절하고 매달리게 된다.

힘든점

사지방 코딩 자체가 쉽지가 않다. 알고리즘 공부를 시작하기 전에는 프론트엔드나 백엔드 개발을 했었는데, 쉽지 않은 환경이었다.

  1. 시간이 너무 제한적이다.

    코로나 상황으로 인해서 일주일에 많아야 두 번정도 쓸수 있는 상황이다.
    그것마저도 저녁 개인정비 시간에만 사용할 수 있다.

  2. 관심을 끌게 된다.

    검은창에 뭘 치고 있으니 나쁜짓 하는건 아닌가?
    왜 손이 그렇게 바쁜가 하는 생각인지 다들 한번씩 쳐다보고 간다 ㅠㅠ

  3. 설치형 프로그램을 사용할 수 없다.

    사지방 규칙이다. 에디터도 사용할수 없다. 너무 엄격한 규칙이다

  4. 포트가 다 막혀있다.

    보안 때문이겠지만 SSH부터 안된다. 이 점을 해결하기 위해서 Codeanywhere을 애용했다. 지금은 다른 방법을 찾아서 해결하고 있다. (나중에 작성)

의문점

책을 보면서 의문이 많이 들었다.
문제에 대한 의문보다는 정의과 경계에 대한 의문이었다.

  • 분할정복 + 메모이제이션 = DP인가?
  • DP는 분할정복에 포함이 안되나?
  • 이 문제(BOGGLE) 는 그냥 완전탐색 문제라는데 왜 DP로 풀라는건지?
    성능이 별로 향상될 것 같지는 않은데?

...
각종 의문이 떠올랐지만, 자연스럽고 당연한 과정이라 생각한다.

profile
자신을 찾아 개선하는 중

2개의 댓글

comment-user-thumbnail
2023년 4월 24일

저는 그래서 손코딩을 했답니다

1개의 답글