요새 공부하면서 드는 생각


1. 알고리즘 공부


최근엔 알고리즘 위주로 공부하고 있다.

문제 푸는 걸 위주로 하고 있는데, 공부하는 사이트는

백준 저지와 삼성에서 운영하는 사이트이다.

두 곳 모두 장단점이 있다.

분류 장점 단점
백준 알고리즘 별로 체계적으로 문제가 분류되어 있다.
랭킹이 보여서 승부욕을 자극한다.
문제가 난이도 별로는 분류가 안되어있다.
삼성 문제가 난이도 별로 나눠져 있다. 알고리즘 별로 문제가 분류되어 있지 않다.

삼성 사이트에서는 학습자료가 있고, 그 학습자료에 맞는 문제가 있다고 하지만

중간 부분부터 문제가 없다!


나는 참 기초부터 차근차근 체계적으로 공부하는 걸 좋아한다.

basic_important basic_important2 [던파에서 가장 위대한 NPC인 G.S.D는 이렇게 말했다]


고등학생 때는 1학년 때부터 3년동안 공부할 껄 다 계획했다.

중간에 뭐가 짤리거나 어쩌거나 하면 심란하다.

그래서 처음엔 삼성 사이트에서 공부하다가 최근에는 백준 저지에서 주로 공부 중이다.


지금까지 했던 취업 준비 공부 중 제일 재밌다.

개발자로의 전향은 잘한 것 같다.



2. 이 공부는 왜 해야하는가?


알고리즘 공부하면 각종 수학식을 자주 만난다.

대학생 때 배웠던 이산수학, 정수론이 많이 나온다.

아주 잠깐 수리과학 전공하겠다고 깝치던 시절 수강했던 과목들이다.

어렵기도했고, 공부를 안하기도 했고…


하지만 그때도 느꼈던 거고 지금도 느끼는 거고

공부를 할 때 제일 중요한 건 동기(motive)인 것 같다.

내가 이걸 도데체 왜 배워야 하는가!

실제로 대학생 때 성적이 잘 나올 때도 이런 고민 때문에 힘들었었다.

‘그래. 일단 성적은 잘 받았어. 근데 이게 내가 돈벌이 하는데 쓰이냐구요…’

‘돈벌이 하는데 못쓸꺼면 왜 고생하며 이걸 배우고 있냐구요…’

이 때문에 지도교수를 찾아가 상담을 받기도 했다.

별로 도움은 안됐지만…


정수론 이야기가 나온김에 수리과학 전공할 때를 잠깐 떠올려본다.

수리과학 즉, 수학과는 고등학생 때처럼 수학문제를 푸는 곳이 아니다.

(요새는 아무데나 다 ‘과학’을 붙이는 것 같다. 물론 수리과학은 말이 되는 거지만)

수학과 대부분의 수업의 형태는 다음과 같다.

이론 보여주기 -> 이론 증명하기

이게 반복된다. 물론 증명은 꼭 필요하다.

맞다고 배운 이론이 왜 맞는지는 알고 써야하니까

근데 문제는 그 전이다.

‘그래서 이 이론이 무슨 쓸모가 있는데?’


예를 들어 꽤 오래되긴 했지만 해석학을 들었을 때다.

수리과학 전공필수 과목으로 해석학1, 2로 나눠져있어 두학기에 걸쳐 들어야한다.

얼마나 양이 많고 어려운지 실험도 없고 그냥 숙제, 시험 뿐인데 3학점도 아니고 4학점이다.

해석학1에서 초반 부분에 나오는게 closed, open의 정의다.

뭐시 어쩌고 저쩌고 입실론 델타 어쩌고 저쩌고

closed open 정의 알겠고, 그를 활용한 이론도 증명 알겠다.

근데 이게 왜 배우는지 모른다. 쓸모 없을꺼같다고 그냥 넘어가면

다음에 배우는 이론을 이해못한다. 그게 반복되며 해석학1이 끝난다.

다음학기에 해석학2를 중간쯤 공부할 쯤에야 왜 배웠는지 조금씩 알거같다.

‘아 이거 미분할라고 저번학기에 그걸 배웠어?’


수리과학 수업을 듣는 동안은 항상 이 의구심이 들었고,

후에 전과한 산업공학은 어느정도 이를 해소시켜줬다.

그래도 산업 실전에 적용되는 이론을 배우니까


최근에 알고리즘을 공부하면서 나오는 이론들을 보면

‘아 이거 그때 배웠던거! 이래서 배우는 구나’

지금은 재밌다. 하지만 그 당시에는… 날 너무나 괴롭게 했었다.


나만 이런 고민을 하는건가…

다들 그냥 닥치고 공부하는건가…

공부 자체가 재밌는건가…

잘 모르겠다.




PS


결론: 수학과는 수학 자체를 즐기고, 타고난 사람이 가야한다…

날 괴롭혔던 책들…얼마나 괴로웠던지 책들이 아직도 기억난다. 표지며 제목이며…

지금은 추억

Mathematical_Analysis

elementary_number