이런 걸
배워요!
자료구조
알고리즘
개발자가 꼭 알아야 할 자료구조 & 알고리즘,
그림으로 쉽고 재밌게 알려드려요!
기본기가 부족한 개발자가 어떤 걸 학습할지 몰라 방황하는 모습을 볼 때면 항상 안타깝다고 생각했습니다. 시간 여유도 없어 최신 기술을 따라가는 것만도 벅차 보이니 말이죠.
물론 최신 기술도 중요하지만, 컴퓨터 과학 분야에서는 기본기가 훨씬 더 중요합니다.
기본기만 잘 다져놓으면 화려하고 인기 있는 기술들은 언제든 손쉽게 배울 수 있거든요.
자료구조와 알고리즘은 특정 언어나 프레임워크에 국한된 것이 아닙니다.
유행하는 언어와 프레임워크가 달라지더라도 여러분이 배우는 자료구조 & 알고리즘 관련 지식은 그대로 가져가서 적용할 수 있습니다.
대학생
학교 수업에서 배우는
자료구조/알고리즘이
너무 어렵고 딱딱해요.
쉽게 익힐 순 없나요?
비전공자
전공자들은 새로운 언어,
프레임워크에도
적응을 잘 하던데...
그 비결이 궁금해요!
취업 준비생
코딩테스트 문제를 보면
벽이 느껴지고 막막해요.
뭔가 배워야 할 것 같은데
그게 대체 뭐죠?
효율왕
내가 짠 코드의
성능을 분석하고,
더 효율적이고 성능 좋은
코드로 바꾸고 싶어요.
개발을 시작한 지 얼마 안 된 분들께서 흔히 이런 말씀을 하시곤 합니다.
머리에 떠오르는 생각을 바로 코드로 옮기는 건 자연스러운 일입니다.
자료구조와 알고리즘을 배우기 전까지는요!
어떤 문제가 있을 때 해당 문제에서 어떤 자료구조가 가장 효율적인지,
그에 맞는 알고리즘은 어떤 것이 있는지 고민하게 됩니다.
우리가 손쉽게 접하는 대부분의 문제는 이미 알려진 자료구조와 알고리즘으로 해결할 수 있습니다. 만약 없다고 하더라도 우리가 알고 있는 자료구조와 알고리즘을 기반으로 응용하면 금방 해결 가능하죠.
평소 길잡이가 필요하다고 느끼셨던 분들이라면, 자료구조와 알고리즘이 그 역할을 충분히 해줄 수 있을 거라 자신합니다.
자료구조와 알고리즘이 무엇인지 알아보고, 자료구조와 알고리즘을 본격적으로 학습하기 전에 필요한 지식과 환경을 준비합니다.
본격적으로 자료구조에 대해서 알아봅니다. 이 강의는 기본편인 만큼 상대적으로 간단한 구조인 선형 자료구조에 대해서 알아보고 직접 구현해 봅니다.
재귀 알고리즘과 선형 자료구조의 종류 중 하나인 연결리스트(Linked List)를 정렬하는 알고리즘을 알아보고 구현해 봅니다. 그리고 재귀 알고리즘의 단점을 해결할 수 있는 다이나믹 프로그래밍에 대해서 알아봅니다.
Q. 어떤 언어로 진행하나요?
자바스크립트로 진행합니다. 하지만 다른 언어로도 충분히 따라올 수 있도록 자바스크립트 고유의 문법을 사용하지 않고 예시 코드를 작성합니다.
Q. 비전공자도 들을 수 있는 강의인가요?
비전공자를 위해 만든 강의입니다. 강의만 따라오신다면 충분히 자료구조와 알고리즘을 익히실 수 있습니다!
Q. 강의 자료가 있나요?
강의 자료는 없습니다.
학습 대상은
누구일까요?
프로그래밍 언어를 배우고 뭘 해야 할지 모르겠는 분
코딩 테스트를 준비하려는 분
기본기를 튼튼하게 하고 싶으신 분
선수 지식,
필요할까요?
1개 이상의 프로그래밍 언어
전체
25개 ∙ (4시간 19분)
가 제공되는 강의입니다.
수강생 여러분께 하고 싶은 말
03:22
자료구조와 알고리즘이란?
07:55
시간복잡도
08:40
자바스크립트 실행 환경 구축
06:13
배열
04:55
연결리스트 - 개념
05:28
연결리스트 - 구현
24:27
스택 - 개념
06:27
스택 - 구현
06:58
큐 - 개념
05:47
큐 - 구현
11:46
덱 - 개념과 구현
09:45
해시테이블 - 개념
06:27
해시테이블 - 구현
08:36
셋 - 개념과 구현
09:30
재귀
14:25
재귀적으로 생각하기
11:10
재귀 - 하노이 탑
18:05
정렬 - 버블정렬
10:15
정렬 - 선택정렬
10:36
정렬 - 삽입정렬
12:35
정렬 - 병합정렬
22:43
정렬 - 퀵정렬
14:49
동적 프로그래밍 - 메모이제이션
13:32
동적 프로그래밍 - 타뷸레이션
05:22