Super Coding Addict
Ch2. 자료구조와 알고리즘의 이해 본문
1. 자료구조
- 자료구조 = 데이터구조 = data structure
- 대량의 데이터를 효율적으로 관리할 수 있는 데이터 구조 의미
- 데이터 특성에 따라, 어떤 데이터 구조를 사용하느냐에 따라 코드 효율이 달라진다
2. 대표적인 자료구조
- 배열, 스택, 큐, 링크드 리스트, 해쉬 테이블, 힙 등 cf. 현실세계 : 사전
3. 알고리즘
- 어떤 문제를 풀기 위한 절차, 방법 cf. 현실세계 - 백종원 레시피
--> 어떤 문제에 대해, 특정한 '입력'을 넣으면, 기대하는 '출력'이 나오는 프로그래밍
4. 자료구조와 알고리즘이 중요한 이유
- 어떤 자료구조와 알고리즘을 쓰느냐에 따라, 성능이 천차만별
5. 파이썬
- 가장 쉽고, 빠르게 자료구조와 알고리즘을 익힐 수 있는 언어
6. 프로그램 설치
//anaconda
- 파이썬 기본(컴파일러), 파이싼 주요 라이브러리, jupyther notebook 등 유용툴 한꺼번에 설치 가능
//jupyter notebook (vs. Editor(PyCharm) )
- 수많은 코드를 작성 후 한번에 이해하기가 Editor에서는 어려우나, 한줄한줄 코드 실행결과 확인이 쉬움
- 문서와 코드를 함께 작성, 저장할 수 있음
- 보다 효과적으로 자료구조와 알고리즘을 익힐 수 있음
//anacaonda 설치가 안된다면?
- 파이썬 컴파일러 설치한 후,
- jupyter notebook을 설치
--> 명령프롬프트 ; pip install --upgrade pip
pip install jupyter