2007 icpc2

8

Click here to load reader

Upload: yonsei

Post on 20-Jul-2015

446 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: 2007 Icpc2

ACM-ICPC 세미나

2007. 07. 03( 화 ) 14:00

발표자컴퓨터과학과 05 학번 김승덕

연세대학교 정보특기자 YUTAR 2007 년 6 월 21 일 목요일

Page 2: 2007 Icpc2

개요

정렬

연세대학교 정보특기자 YUTAR 2007 년 6 월 21 일 목요일

O(n)

O(n2)

O(nlogn)

구현이 복잡함

목적에 따라 다른 알고리즘

구현이 간단함

n 이 커질 수록 속도가 느려짐

큰 메모리 공간이 필요

정렬 가능한 데이타에 제약

정렬의 종류정렬의 종류

Page 3: 2007 Icpc2

정렬 알고리즘의 종류

O(n2)

• Selection Sort

구간 [k, n] 에서 가장 작은 수를 k 번째로 놓는 정렬 방법

• Insertion Sort

구간 [2, n] 을 반복하면서 큰 수 앞에 작은 수를 끼워놓는 방법

• Bubble Sort

구간 [1, k] 에서 인접한 수 끼리 비교하며 가장 큰 수를 k 번째에 위치 시키는 방법

연세대학교 정보특기자 YUTAR 2007 년 6 월 21 일 목요일

Page 4: 2007 Icpc2

정렬 알고리즘의 종류

O(nlogn)

• Quick Sort

어떤 기준 값을 정해 그 값보다 작은 값과 큰 값을 분리하고 각각에 대해 똑같은 작업을 반복하는 방법

• Heap Sort

힙 구조를 이용한 방법

• Merge Sort

배열을 계속 반으로 나눠서 각각을 정렬하고 전체를 정렬하는 방법

연세대학교 정보특기자 YUTAR 2007 년 6 월 21 일 목요일

Page 5: 2007 Icpc2

정렬 알고리즘의 종류

정렬 알고리즘은 알아야 합니다 .

하지만 ,

자주 사용되는 정렬 알고리즘을

매번 꼭 구현해야 할까요 ?

연세대학교 정보특기자 YUTAR 2007 년 6 월 21 일 목요일

Page 6: 2007 Icpc2

정렬 라이브러리

라이브러리의 사용

• qsort 함수를 사용한 정렬

2. stdlib.h 를 include 한다 .

4. comp 함수를 작성한다 .

6. qsort 함수를 호출 한다 .

• std::sort 함수를 사용한 정렬

2. algorithm 을 include 한다 .

4. std::sort 함수를 호출 한다 .

연세대학교 정보특기자 YUTAR 2007 년 6 월 21 일 목요일

Page 7: 2007 Icpc2

정렬 라이브러리

qsort

연세대학교 정보특기자 YUTAR 2007 년 6 월 21 일 목요일

Page 8: 2007 Icpc2

정렬 라이브러리

qsort

연세대학교 정보특기자 YUTAR 2007 년 6 월 21 일 목요일