더북(TheBook)

입력 서식 우리는 하나뿐만 아니라 다양한 웹 모델에서 랜덤 서퍼의 행위를 연구할 수 있어야 한다. 따라서 데이터는 파일에 보관하고 표준 입력에서 데이터를 읽는 데이터 주도 코드(data-driven code)를 작성하려 한다. 데이터 주도 코드를 작성하려면 먼저 입력 파일에 들어갈 정보를 구조화하는 입력 서식을 정의해야 한다. 입력 서식은 사용하기 편한 형태면 어떠한 형태로도 정의할 수 있다.

▲ 그림 1.6.2 랜덤 서퍼 입력 서식

 

나중에 파이썬 프로그램으로 웹 페이지를 읽는 방법(3.1절)과 이름을 숫자로 변환하는 방법(4.4절)뿐만 아니라 그래프를 처리하는 효율적인 여러 기법을 설명할 것이다. 그러나 여기에서는 0부터 n-1까지 웹 페이지 n개가 있다고 가정하고 링크를 이 숫자들의 순서쌍으로 표현한다. 이 순서쌍에서 첫 번째 숫자는 링크를 담고 있는 페이지, 두 번째 숫자는 링크가 가리키는 페이지를 나타낸다. 이렇게 관례를 정하고 난 다음에는 랜덤 서퍼 문제에 사용할 입력 서식은 페이지 수(n 값) 뒤에 일련의 정수 쌍(웹에 존재하는 모든 링크를 표현)으로 간단히 정의할 수 있다. stdio의 입력 함수들은 연속된 다양한 공백 문자를 하나의 공백으로 처리해주기 때문에, 입력 스트림의 한 줄에 링크 하나만 넣거나 아니면 여러 개를 함께 넣을 수도 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.