[C#] [2] 자료구조와 알고리즘/섹션 0. 개론
2강 환경설정(원● 그리기)
using System; namespace Algorithm { class Program { //언리얼이건, 유니티건 Main함수가 있다. static void Main(string[] args) { //게임은 일반적으로 Main 루프가 하나씩 있다. while(true) { //기본 3단계 (어떤 게임이건) //1. 입력 : 사용자가 어떤 키보드나 마우스를 입력하는 것 //2. 로직 : 입력으로 인해 움직임 등 반응하게 만드는 것 //3. 렌더링 : 연산 된 게임 세상을 예쁘게 그려주는 것(Direct X, OpenGL 등) //출력 해보기 Console.WriteLine("Hello World!"); } } } } Hello World!가 무한대로 뜨는 것을 볼 수 있다. using System; n..
01. Big-O 표기법
알고리즘의 효율을 측정하는 법 Q) 두 알고리즘 A와 B를 비교하려면? 여러 시행착오 1)A가 B보다 "조금", "많이" 빨라요 -> 애매모호 2)프로그램을 짜서 실행 속도 비교? -> 환경에 의존적(ex: 컴퓨터 하드웨어 성능, 윈도우인지 리눅스인지, 모바일인지) 3)입력이 적은 구간과 많은 구간에서 성능이 확연하게 차이가 날 경우는? (혹은 구간별로 성능이 차이 날 경우) 이런 시행착오 끝에 A) 알고리즘의 성능을 객관적으로 측정하기 위해 대안으로 Big-O 표기법을 사용. Q) Big-O 표기법 1단계? A) "수행되는 연산(산술, 비교 대입 등)의 갯수를 '대략적으로' 판단" Q) Big-O 표기법 2단계? A) 대장만 남긴다. 규칙1) 영향력이 가장 큰 대표 항목만 남기고 삭제 규칙2) 상수 무..