18.3.6 표준 라이브러리 알고리즘 활용 예제 ������������������������������������������������������������� 870
18.4 함수 객체 ��������������������������������������������������������������������������������������������������������������� 872
18.4.1 산술 함수 객체 ������������������������������������������������������������������������������������������ 872
18.4.2 비교 함수 객체 ������������������������������������������������������������������������������������������ 874
18.4.3 논리 함수 객체 ������������������������������������������������������������������������������������������ 876
18.4.4 비트 연산 함수 객체 ����������������������������������������������������������������������������������� 876
18.4.5 어댑터 함수 객체 ��������������������������������������������������������������������������������������� 877
18.4.6 invoke() �������������������������������������������������������������������������������������������������� 883
18.4.7 함수 객체 직접 만들기 �������������������������������������������������������������������������������� 884
18.5 표준 라이브러리 알고리즘 심층 분석 ��������������������������������������������������������������������������� 886
18.5.1 반복자 ����������������������������������������������������������������������������������������������������� 886
18.5.2 불변형 순차 알고리즘 ��������������������������������������������������������������������������������� 887
18.5.3 가변형 순차 알고리즘 ��������������������������������������������������������������������������������� 893
18.5.4 연산 알고리즘 ������������������������������������������������������������������������������������������� 904
18.5.5 swap()과 exchange() 알고리즘 ����������������������������������������������������������������� 906
18.5.6 분할 알고리즘 ������������������������������������������������������������������������������������������� 908
18.5.7 정렬 알고리즘 ������������������������������������������������������������������������������������������� 910
18.5.8 이진 탐색 알고리즘 ������������������������������������������������������������������������������������ 910
18.5.9 집합 알고리즘 ������������������������������������������������������������������������������������������� 912
18.5.10 최대/최소 알고리즘 ������������������������������������������������������������������������������������ 915
18.5.11 병렬 알고리즘 ������������������������������������������������������������������������������������������� 917
18.5.12 수치 처리 알고리즘 ������������������������������������������������������������������������������������ 918
18.6 알고리즘 예제: 선거인 명부 검사 ������������������������������������������������������������������������������� 921
18.6.1 문제 정의 ������������������������������������������������������������������������������������������������� 921
18.6.2 auditVoterRolls 함수 �������������������������������������������������������������������������������� 921
18.6.3 getDuplicates 함수 ���������������������������������������������������������������������������������� 923
18.6.4 auditVoterRolls 함수 테스트하기 ���������������������������������������������������������������� 924
18.7 요약 ��������������������������������������������������������������������������������������������������������������������� 925
35