> 백엔드 개발 > C++ > C++를 사용하여 연결 리스트의 요소 검색

C++를 사용하여 연결 리스트의 요소 검색

WBOY
풀어 주다: 2023-09-10 15:01:02
앞으로
887명이 탐색했습니다.

C++를 사용하여 연결 리스트의 요소 검색

연결된 목록에서 요소를 검색하려면 전체 연결 목록을 반복하고 각 노드를 필요한 데이터와 비교하고 일치하는 항목을 찾을 때까지 계속 검색해야 합니다. 연결된 목록은 임의 액세스를 제공하지 않기 때문에 첫 번째 노드부터 검색을 시작해야 합니다.

우리는 정수의 연결 목록과 정수 키를 얻습니다. 이 키가 연결 목록에 존재하는지 찾아야 합니다. 연결된 목록에서 간단한 선형 검색을 수행하여 키를 찾을 수 있습니다. 존재하는 경우 "예"를 반환할 수 있으며, 그렇지 않으면 "아니요"를 반환할 수 있습니다.

몇 가지 입력 및 출력 시나리오를 살펴보겠습니다. -

요소가 목록에 있는지 확인하고 제공된 키 3을 사용하여 해당 출력을 얻는 데 필요한 목록을 가져왔습니다. -

으아아아

핵심 5를 사용하여 또 다른 시나리오를 고려해 보겠습니다. -

으아아아

알고리즘(단계)

필요한 작업을 수행하기 위해 따라야 하는 알고리즘/단계는 다음과 같습니다. -

  • 헤더를 비워두세요.

  • 연결된 목록에 일부 항목을 추가하세요

  • 사용자가 입력한 항목을 검색하여 검색하세요.

  • 빈 노드에 도달할 때까지 연결 목록을 처음부터 끝까지 선형적으로 탐색합니다.

  • 각 노드를 확인하여 데이터 값이 검색하려는 항목과 일치하는지 확인하세요.

  • 데이터가 발견된 노드의 인덱스를 반환합니다. 찾을 수 없으면 다음 노드로 이동합니다.

예를 들어 키가 12587인 "52->4651->42->5->12587->874->8->null"과 같은 연결 목록이 있습니다. 이 예제를 구현하는 C++ 프로그램은 다음과 같습니다. -

으아아아

출력

으아아아

이제 재귀적 방법을 사용하여 동일한 문제를 해결하겠습니다 -

으아아아

출력

으아아아

결론

시간 복잡도는 O(n)입니다. 우리는 이 문제를 해결하기 위해 반복적인 접근 방식을 사용합니다. 이 문제를 재귀적으로 시도해 보세요.

위 내용은 C++를 사용하여 연결 리스트의 요소 검색의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿