1순차 탐색으로 특정 값의 위치 찾기

     

    다음은 순차 탐색 알고리즘을 이용하여 주어진 리스트 [17, 92, 18, 33, 58, 5, 33, 42]에서 특정 값(18, 33, 900)을 찾아서 해당 위치 번호를 돌려주는 프로그램입니다.

     

    icon_cakewalk 프로그램 7-1

     

    순차 탐색 알고리즘

     

    ◉ 예제 소스 p07-1-search.py

    # 리스트에서 특정 숫자의 위치 찾기

    # 입력: 리스트 a, 찾는 값 x

    # 출력: 찾으면 그 값의 위치, 찾지 못하면 -1

     

    def search_list(a, x):

        n = len(a)              # 입력 크기 n

        for i in range(0, n):   # 리스트 a의 모든 값을 차례로

            if x = = a[i]:      # x 값과 비교하여

                return i        # 같으면 위치를 돌려줍니다.

     

        return -1               # 끝까지 비교해도 없으면 -1을 돌려줍니다.

     

    v = [17, 92, 18, 33, 58, 7, 33, 42]

    print(search_list(v, 18))   # 2(순서상 세 번째지만, 위치 번호는 2)

    print(search_list(v, 33))   # 3(33은 리스트에 두 번 나오지만 처음 나온 위치만 출력)

    print(search_list(v, 900))  # -1(900은 리스트에 없음)

     

    icon_result 실행 결과

     

    2

    3

    -1

     

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