본문 바로가기

컴퓨터 공학/자료구조와 알고리즘

개발자가 자료구조와 알고리즘을 알아야 하는 진짜 이유

728x90
반응형

개발자가 자료구조와 알고리즘을 알아야 하는 진짜 이유

 

안녕하세요.

 

로스윗의 코딩캠프에 오신걸 환영합니다.

 

오늘은 개발자가 자료구조를 왜 공부해야 하는지에 대한

 

포스팅을 진행해볼까 합니다.

 

바로 시작해보겠습니다~!

 

 

 

 

 

- 개발자가 자료구조와 알고리즘을 알아야 하는 진짜 이유

 

1. 코딩 테스트

보통의 IT기업에 서류전형이 통과하고 나면

 

쿠팡이나 네이버 등 대기업에서는 코딩테스트 라는 것을 봅니다.

 

이때 자료조사에 대한 베이스가 없으면 많이 힘들 수 있습니다.

 

 

코딩테스트 뿐만 아니라 면접에서도 자료구조에 대한 질문을 하기도 합니다.


예를 들면 array list랑 linked list의 차이를 내부구현 관점에서 설명하시오. 라던가


아니면 어떤 Merge sort의 시간복잡도를 증명하시오. 이런 질문이 면접에서 나올 수 있습니다.

 

 

 

2. 현업 문제 해결

단지 코딩테스트나 면접이나 취업만을 위해서 자료구조를 공부해야 하는 건 아닙니다.

 

여러분이 취업을 하시게 되면 본격적으로 개발자로서 일을 하시게 될 텐데

 

현업에서 알고리즘이나 자료구조를 모르면 해결할수 없는 문제를 직면하는 경우가 있습니다.

 


10에 8~9정도는 몰라도 문제 없이 해결할 수 있을 수 있습니다. 

 

그런데 그 한 번을 만났는데 그 때 알고리즘이나 자료구조를 몰라서 

 

프로그램을 완성시킬 수 없다면 의미없는 프로그램이 되겠죠.


또 자료구조의 실제 내부 동작 과정을 모르고 사용하게 되면

 

말 그대로 자료구조를 잘못 사용하게 되는 경우가 발생하겠죠.


잘못 쓴 자료구조 하나 때문에 프로그램의 성능이 굉장히 저하될 수 있고


반대로 자료구조를 적합하게 바꿔주는 것만으로 성능을 향상 시킬 수 있습니다.

 

 

 

3. 프로그램 성능 향상

여러분이 자바언어를 배우기 시작하셨다면 array list를 한번쯤은 보셨을겁니다.

 

만약 여러분이 수십억개의 데이터를 array list에 저장을 하고

 

필요할 때마다 list에서 data를 찾아와서 data를 써야 한다면 얼마나 시간이 걸릴까요?

 

그 동안은 그렇게 많은 양을 쓸 일이 없으니 생각해보지 못하셨을 수도 있습니다.

 

실제로 회사에서 일을 하게 되면 많은 양의 데이터를 필연적으로 관리하고 다루어야 할 일이 생길텐데

 

이때 자료구조를 모르고 무조건 array list만 쓴다면 문제가 발생할 수 있습니다.

우리는 한정된 시간과 공간내에서 우리가 원하는 결과를 최대한 빠르게 찾아낼 수 있어야 하고

 

그 기본에는 자료구조와 알고리즘이 있습니다.

 

물론 단순히 자료구조와 알고리즘만 안다고 해서 저절로 다 해결되는 건 아니고

 

말씀드린것처럼 모든 것의 기본이 되는 기초라고 할 수 있습니다.

 

자료구조와 알고리즘
자료구조와 알고리즘


그래서 앞으로 로스윗의 코딩캠프에서

 

최소한의 기본적인 자료구조와 알고리즘에 대해서 하나씩 천천히 알려드리도록 하겠습니다.


물론 강의만 듣는다고 해서 다 여러분의 것이 되진 않겠죠?

 

개인적으로 공부하는 시간도 꼭 가지셔야 합니다.


그럼 다음 포스팅에서는 자료구조에 대한 이론을 설명드리고

 

실습도 해보는 시간을 가져보겠습니다.


그럼 다음 포스팅도 기대해주세요~! 감사합니다!!

 

 

※ 추가설명

문과는 비전공자 출신으로 개발을 막 시작하신 분들이라면 프로그래밍을 하는데 있어서
문과의 공부스타일이랑 프로그래밍을 공부하는 방법은 많이 차이가 있습니다.
처음 공부를 시작할 때 포인트를 잘못 잡아서 힘들어하는 경우가 종종 있습니다.
그래서 자료구조를 공부하시면서 공부 스타일에 대한 패러다임을 많이 바꿀 수 있고
컴퓨팅적 사고능력도 많이 발달하게 됩니다.
비전공자 출신 개발자 여러분들
모두 화이팅!

 

그림으로 쉽게 이해하는 자료구조와 알고리즘 차이

 

그림으로 쉽게 이해하는 자료구조와 알고리즘 차이

그림으로 쉽게 이해하는 자료구조와 알고리즘 차이 안녕하세요 로스윗의 코딩캠프입니다. 오늘도 달콤친절한 저 로스윗이 오늘은 자료구조와 알고리즘에 대한 주제로 포스팅을 하게 되었습니

rosweet-ai.tistory.com

그림으로 쉽게 이해하는 자료구조와 알고리즘 차이 #2

 

그림으로 쉽게 이해하는 자료구조와 알고리즘 차이 #2

그림으로 쉽게 이해하는 자료구조와 알고리즘 차이 #2 안녕하세요? 로스윗의 코딩캠프에 오신 것을 환영합니다. 오늘은 지난 시간 포스팅했던 자료구조에 이어 알고리즘에 대한 포스팅을 진행

rosweet-ai.tistory.com

 

728x90
반응형