본문 바로가기

Education

[부스트 코딩 뉴비 챌린지 2020] week6_LIVE 강의

반응형

1. 자료구조 되짚어보기

- 원래 배열이 크기가 고정되어 있지만, realloc을 이용하면 배열의 크기를 변경할 수 있다.

- 다른 언어에서는 어떻게 쓰이는지 한 번 보자! 자바나 C++에서 ArrayListVector도 realloc의 개념을 확장시킨 것이다.

 

- 이중 연결 리스트, 환형 연결 리스트라는 것도 알아보자. 

- 재귀를 for문으로도 구현을 할 수도 있다.

- 트리를 꼭 연결 리스트로 만들 필요 없다. 배열로도 만들 수 있으므로 한 번 만들어보자!

해시테이블은 중요한 자료구조이다. 현업에서 가장 많이 쓰인다. 

해시 함수를 늘릴 수록 충돌이 적어지지만, 메모리를 많이 차지하게 되는 trade off가 발생한다. 현업에서도 trade off가 많이 고려하므로 이를 잘 고려하자.

문자열을 저장하고 관리하는데 좋은 자료구조이다. 난이도가 높으므로 구현하기엔 많이 어렵다.

이는 자동완성 기능을 만들 때 자주 쓰인다. 트라이를 한 번 구현해보자!!

Dictonary는 C에서는 쓰이는 자료구조는 아니고, 파이썬 같이 다른 언어에서 사용된다. 

 

2. 출제자에게 듣는 '6주차 미션'

6주차 코벤져스's PICK.pdf
0.61MB

 

(1번 문제)

"\a" 경고음 내는 추가기능을 추가한 점이 재밌었다.

 

(2번 문제)

코드를 문서화하는 것도 중요하다. 깃허브에서도 눈이 가는건 예쁘게 꾸며진 프로젝트이다. 

개발자에게 글쓰기 능력도 요구된다.

 

(3번 문제)

double linked list를 이용하였다. 기존의 요구사항에 더해서 새로운 것들과 안 배운 것들을 추가하여 선정하였다.

 

(4번 문제)

자료구조와 동시에 알고리즘 문제이기도 하다. 포인터를 하나가 아니라 두개를 사용해야 하는데 이를 어떻게 움직이게 할 건지에 대해 다루는 문제이다. 

 

송태의님과 함께하는 사전질문 Q&A

1. 주력으로 사용할 언어를 하나 만들어놓자. (참고: 자바는 포인터가 없다!)

2. 프로젝트를 많이 해보세요. 어떤 것을 처음부터 끝까지 해봤다는 경험이 나의 분야를 결정하게 되는 계기가 될 것이다. 뭐라도 하나 해라! 고민보다는 실천!

 

3. 알고리즘 혹은 자료구조. 현업에서 많이 사용한다.

어떤 알고리즘과 자료구조로 내게 주어진 과제를 수행할 수 있는 능력이 중요해.

4. T자형 인재. 쭉 훑고 내 주요 분야 하나만 깊게 공부하면 좋다. 한 분야는 깊게, 다른 분야는 얇게 두루두루.

5. 대학원이 필수는 아니지만, 채용공고를 보면 AI쪽 엔지니어를 뽑을 때 석박사 우대가 많으므로 우대사항은 되므로 가면 좋겠지요오

6. 자료구조도 첨부터 짜는 게 아니라 이전 코드를 갖다쓴다고 했었다. 따라서 어떤 알고리즘과 AI가 어떤 상황에 잘 쓰이는지를 아는 능력을 키우자. 취업이 목표라면 말이다. 어떤 모델이 어디에 쓰이는지, 응용방법에 대해서. 

7. 후자. 막힐 때는 다른 사람 코드를 보고 공부를 하는 게 좋다. 문제를 많이 풀어보면 스택, 큐, 해시 중 어느 방법을 써야할지 알게될 것이다. 결국에는 다 문제가 비슷비슷하다. 엄청 많긴 하지만 그 내용을 한 번씩 다 접해보자.

하루종일 고민하기보다는 빨리 풀이보고 방법을 익히자. 시간이 금이야! 빨리 보고 많이 접해보자.

"know how"보다는 "know where!" 기존의 것을 내 것에 잘 갖다붙이는 게 개발자의 좋은 능력이다. 

영어도 알고 중국어도 알면 좋다. 요새는 중국사람들의 자료도 많이 올라오기 때문에.

8. AI가 전망있는 분야.. 하지만 정확하진 않다.

하지만 내 생각에 전망있는 분야를 찾자. 팁이라면, 어떤 프레임워크나 언어를 배우고 싶고 이것이 전망있는지 보고 싶다면 이의 공식사이트를 보자. tensorflow라면 tensorflow공식 사이트. 방문해보자. 

왜냐하면 공부하기에는 공식 사이트가 가장 좋다. 책은 최신 트렌드를 못 따라간다. 남들이 안보는 나만의 정리가 잘 되어있는 가장 정확하고 가장 최신 정보! 

 

(+) 공부 팁!

유명한 분의 강의를 결제하기 전에 목차를 보고 검색하여 나만의 커리큘럼을 만들어보자.

돈도 아끼고 꿀팁!

 

 

(+) Q.

멘토님! 질문이 있습니다~! 첫 질문에 대한 답변으로 비전공자 입장에서 처음부터 준비할 때는 무조건 처음부터 만들어보는게 좋다고 하셨는데요! 그런데 실력이 부족한 상태로는 어떤 프로젝트에 팀원으로서 참여하기가 어렵다고 생각이 듭니다. 많은 회사들이 협업을 중요시하는데, 팀 프로젝트가 아니라 개인 프로젝트만으로도 자소서나 포트폴리오, 면접 등에서 충분한 어필이 될지 궁금합니다!

A. 

팀프로젝트보다는 개인프로젝트가 더 어필된다고 생각한다. 개발이 협업이 중요하긴하지만, 결국에는 개발은 혼자 하는 것이다. 결국 주담당자는 나이다. 부담당자는 책임져주지 않는다.

따라서 개인 프로젝트가 더 의미있다고 생각한다. '이 프로젝트를 나 혼자 쭉 이어봤다'가 더 어필될 것이다. 내가 전체를 다 해봤어!!

 

 

 

 

 

 

반응형