본문 바로가기

Dev

자료 구조(Data Structure)와 알고리즘(Algorithm) 공부 및 필요성

728x90
반응형

먼저 이 글은 유튜브 노마드 코더의

 

개발자라면 "무조건" 알고리즘 공부를 해야할까? 라는 동영상을 시청하고 작성했다.

 

자료 구조와 알고리즘을 필요로 하는 단계

1. 초보자 단계 - 코딩을 처음 배우는 사람들 // 일반적인 코드가 정상적으로 실행되도록 연습하는 단계

2. 코드의 퀄리티를 신경쓰는 단계(굳이 따지면 중급자..?) // 클린 코드를 작성해 관리하기가 편하고 다른 사람들과 협업하기 좋은 코드를 작성하는 단계

3. 코드의 속도를 신경쓰는 단계 // 어떻게 하면 더 빠르고 효율적인 코드를 만드는가

 

3단계에 속해 있는 사람들이 자료 구조와 알고리즘을 공부해야 한다.

 

자료구조(Data Structure)

어떤 자료구조를 사용하느냐에 따라 속도 차이가 난다.

 

프론트엔드 개발자라면? 백엔드에서 json데이터를 가져와 UI와 함께 표현

백엔드 개발자라면? 데이터베이스를 다룬다. 데이터를 검색, 편집, 수정, 추가해야한다.

 

어떤 구조는 데이터를 정렬하는데 최적화, 검색에 최적화, 추가 혹은 편집에 최적화되어있다.

ex) 언제는 배열(Arrays)보다 연결 리스트(Linked Lists)를 써야한다.

 

따라서, 4가지 작업에 맞춰 각각의 자료 구조에 대한 이해도가 필요하다.

 

4가지 작업이란,

1. 검색 2. 읽기 3. 삽입 4. 삭제

 

알고리즘(Algorithm)

특정 액션을 수행하기 위해 컴퓨터가 수행해야 하는 것들.

 

훌륭하고 효율적인 알고리즘을 찾으면 반복적으로 사용할 수 있다.

ex) 우리가 일어나서 하는 행동 습관들, 집에서 카페까지의 최단 거리 찾기, 이미지 압축 알고리즘

 

다음 시간에 배울 내용

배열의 장/단점

 

 

참고한 동영상

 

728x90
반응형

"); wcs_do();