• 검색 결과가 없습니다.

알고리즘

N/A
N/A
Protected

Academic year: 2021

Share "알고리즘"

Copied!
16
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

2019 년 봄학기 강원대학교 컴퓨터과학전공 문양세

알고리즘 (Algorithm)

 개요 (Overview)

(2)

알고리즘 ?

Overview of Algorithms

무엇을 배울 것이라 생각하고 왔나요 ?

 알고리즘 ? 순서도인가 ? 무엇에다 쓰는 것이지 ?

 수학도 쫌 필요하다는데 , 많이 어렵진 않을까 ?

 여러분은 알고리즘을 어떻게 생각하고 수강신청 했나요 ?

(3)

알고리즘 개요 및 응용 분야

과목 개요

전산학 (Computer Science) 의 필수 과목

Divide & Conquer, Dynamic Programming, Greedy Method, Backtracking, …

 프로그램을 보다 효율적으로 , 보다 지능적으로 작성하기 위하여 꼭 필요한 과목

 전산학자의 대부분은 새로운 방법이나 이론을 알고리즘으로 기술함

알고리즘의 응용 분야

모든 프로그램의 설계

문제 및 해결 방법의 정형적 표현

프로그램의 효율성 및 복잡도 분석

 Algorithms + Data Structures = Programs

Overview of Algorithms

(4)

강의 계획 (1/3)

선수 과목 (Prerequisites)

자료구조

담당 교수

문양세 (http://cs.kangwon.ac.kr/~ysmoon/, [email protected])

한빛관 303 호실 , x8449, [email protected])

강의 교재

도경구 역 , Foundations of Algorithms Using C++ Pseudocode, 사이텍미디어 - 원저자 : Richard Neapolitan and Kumarss Naimipour

- Java 버전 : Foundations of Algorithms Using Java Pseudocode

Overview of Algorithms

(5)

강의 계획 (1/3)

선수 과목 (Prerequisites)

자료구조

담당 교수

문양세 (http://cs.kangwon.ac.kr/~ysmoon/, [email protected])

한빛관 303 호실 , x8449, [email protected])

강의 교재

도경구 역 , Foundations of Algorithms Using C++ Pseudocode, 사이텍미디어 - 원저자 : Richard Neapolitan and Kumarss Naimipour

- Java 버전 : Foundations of Algorithms Using Java Pseudocode

Overview of Algorithms

(6)

강의 계획 (2/3)

평가 기준 ( 아래 평가 비율은 일부 조정될 수 있습니다 .)

알고리즘은 암기과목이 아닙니다 . 외우지 말고 , 이해하세요…

중간시험 30%

기말시험 40%

숙제 20% (3 개 개인별 과제 , 2 개 조별 과제 , 프로그래밍 과제 )

출석 10%

강의 계획

Week

강의 내용 비고

1

기초 수학 복습

Appendix A

2

알고리즘 : 효율 , 분석 , 그리고 차수

Ch. 1

3

알고리즘 : 효율 , 분석 , 그리고 차수

Ch. 1

4

분할정복 (Divide & Conquer)

Ch. 2

5

분할정복 (Divide & Conquer)

Ch. 2

6

동적 프로그래밍 (Dynamic Programming)

Ch. 3

7

동적 프로그래밍 (Dynamic Programming)

Ch. 3

8

중간시험

Overview of Algorithms

(7)

강의 계획 (3/3)

강의 계획 ( 계속 )

기타 사항

강의 사이트 : http://cs.kangwon.ac.kr/~ysmoon/courses/2019_1/alg.html ( 강의 슬라이드 / 과제는 이루리 사이트에도 함께 올립니다 .)

숙제 제출 관련 : 제출 기한 이후에 제출하면 20% 감점

숙제 종류 : 레포트 및 프로그래밍

 조별 과제의 경우 , 숙제를 조별로 assign 하고 , 발표 기회를 부여할 예정임

Week

강의 내용 비고

9

탐욕적인 방법 (Greedy Method)

Ch. 4

10

탐욕적인 방법 (Greedy Method)

Ch. 4

11

되추적 (Backtracking)

Ch. 5

12

되추적 (Backtracking)

Ch. 5

13

분기한정 (Branch-and-Bound)

Ch. 6

14

분기한정 (Branch-and-Bound)

Ch. 6

15

기말시험

Overview of Algorithms

(8)

알고리즘 ? 전공필수래 ~

정말로 너무 중요한 과목입니다 .

알고리즘 과목은 많은 학교에서 전공필수로서 3 학년 때 수강합니다 . 일반적으로 , 프로그래밍 언어와 자료 구조 ( 데이터 구조 ) 를 배운 이후 에

알고리즘 과목을 전공필수로 수강합니다 .

 취업 시 , 필기시험의 대부분 문제는 알고리즘에서 출제됨

Overview of Algorithms

(9)

알고리즘 ? 전공필수래 ~ 정말 ?

Overview of Algorithms

(10)

정보올림피아드 vs. 알고리즘

Overview of Algorithms

(11)

ACM 프로그래밍 경진대회 …

Overview of Algorithms

(12)

전산과 졸업생과 비트스쿨 수료생이 다른 이유 ?

컴퓨터학원 수료생도 프로그램은 짤 줄 안다 .

 전산과 졸업생은 프로그램을 효율적으로 짤 줄 안다 . 컴퓨터학원 수료생도 메모리를 사용할 줄 안다 .

 전산과 졸업생은 메모리를 효율적으로 ( 조금만 ) 사용할 줄 안다 .

Overview of Algorithms

(13)

삼성의 S 직군 ?

Overview of Algorithms

(14)

그러니까 , 조금 어렵더라도…

열심히 배우도록 합시다 .

여러분도 미래의 마크 주커버그가 될 수 있습니다 .

Overview of Algorithms

(15)

알고리즘은 이제 일상속으로 ~

Overview of Algorithms

(16)

알고리즘 ?

Overview of Algorithms

컴퓨터에서 논리적 사고의 토대를 제공함

 논리적 사고뿐 아니라 효율적 해결책을 찾을 수 있습니다 .

 멋진 프로그래밍을 하기 위한 핵심 기술을 배울 수 있습니다 .

 검색 , 정렬 , 동적 프로그래밍 등 고급진 기술을 익히게 됩니다 .

자 ~ 한 학기 알고리즘 열심히 공부해 봅시다 !

참조

관련 문서