3.3. 한예준 ¶
C는 절차지향, C++은 객체지향이다. C++11부터 함수형 언어의 패러다임이 도입되었다. (C++11부터 3년마다 한번씩 표준을 낸다. 가장 최신은 C++20) 복잡도 - 시간 복잡도, 공간 복잡도가 있다. 시간 복잡도는 실행 시간 등에 관한, 공간 복잡도는 배열 등에서 공간을 잡는 것에 관한 것이다. 메모리 초과는 거의 일어나지 않는다. 빅O 표기법 - 시간복잡도를 표현하는 방법. 상수는 없애서 표현한다. 입출력 속도(입력 속도) - ios_base::sync_with_stdio(false); 쓰면 더 빨라진다. 동적 메모리 할당 - C언어에서 malloc 쓰는 것보다 c++에서 쉽게 사용 가능 STL - Standard Template Library, C++에서 사용하는 라이브러리 template, pair, vector,... C++11에서 auto를 사용하여 자동으로 타입을 추론하도록 할 수 있다. 헤더파일 - <stdio>, <iostream>,... <bits/stdc++.h> -> 웬만한 헤더파일 선언되어 있음! [자료구조] deque - 앞뒤 모두에서 pop, push 가능, 헤더파일: <deque> list - 링크드 리스트: 이중 연결 리스트, 단일 연결 리스트 stack - LIFO(Last In First Out) 구조, 나중에 들어온게 먼저 나간다. vector로도 충분히 구현이 가능하다. 재귀의 개념이 stack. queue - FIFO(First In First Out) 구조, 먼저 들어온게 먼저 나간다. 스케쥴링할 때 많이 쓴다.
4. 후기 ¶
- 후기 작성 요령 : 후기는 F4(ThreeFs + Future Action Plan)에 맞게 작성해주세요.
- Facts, Feelings, Findings, Future Action Plan. 즉, 사실, 느낀 점, 깨달은 점, 앞으로의 계획.
김도엽:
한윤호:
한예준: C++라는 새로운 언어와 자료구조(deque, list, stack, queue)에 대해 간략히 배웠다. C는 생각보다 C++과 많이 달랐고, 훨씬 어려워보였다... 항상 C++ 관련 코드를 보면 이게 뭐지 싶었는데 이제는 어느정도(?) 이해할 수 있을 것 같다. 빨리 C++을 익혀서 자료구조로 구현해보고 싶다.