>  기사  >  웹 프론트엔드  >  주어진 연결 리스트의 요소를 쌍으로 교환하는 JavaScript 프로그램

주어진 연결 리스트의 요소를 쌍으로 교환하는 JavaScript 프로그램

王林
王林앞으로
2023-09-06 20:45:08976검색

用于成对交换给定链表元素的 JavaScript 程序

이 튜토리얼에서는 주어진 연결 목록의 요소를 쌍으로 교환하는 JavaScript 프로그램을 배웁니다. 연결된 목록의 일반적인 작업은 인접한 요소를 쌍으로 바꾸는 것입니다. 이 작업은 데이터 재구성, 특정 순서로 요소 재배열 또는 특정 알고리즘 최적화와 같은 다양한 시나리오에서 유용합니다. 또한 JavaScript를 사용하여 주어진 연결 목록의 요소 쌍 교환 문제를 해결하는 데 중점을 둘 것입니다. 우리는 알고리즘 구현에 대한 단계별 접근 방식을 제공하고 그 뒤에 있는 논리와 코드를 설명합니다. 이 튜토리얼이 끝나면 각 단계에 대한 샘플 코드 및 지침과 함께 연결된 목록의 요소를 쌍으로 교환하는 JavaScript 프로그램을 구현하는 방법을 명확하게 이해하게 될 것입니다.

이 문제에 대한 해결책을 JavaScript로 살펴보겠습니다!

문제 설명

연결된 목록이 주어지면 작업은 요소를 쌍으로 교환하는 JavaScript 프로그램을 구현하는 것입니다. 즉, 연결리스트의 연속된 위치에 있는 요소들이 서로 교환된다. 연결된 목록의 요소 수가 홀수이면 마지막 요소는 변경되지 않습니다. 프로그램은 연결된 목록의 수정된 헤드를 반환해야 합니다.

예 1 -

으아아아

설명- 주어진 연결 목록에서 위치 1과 2(1과 2는 0 인덱스)의 요소가 바뀌고 결과는 2 -> 1 -> 3 -> 4 -> 5입니다. 그런 다음 위치는 요소 3과 4의 경우 결과는 2 -> 1 -> 4 -> 3 -> 5입니다.

예 2 -

으아아아

설명 주어진 연결리스트에서 위치 1과 위치 2의 요소가 바뀌었고 결과는 20 -> 10 -> 30 -> 40 -> 50 -> 60 -> 70입니다. 그러면, 위치 3과 4의 요소가 교환되어 결과는 20 -> 10 -> 40 -> 30 -> 50 -> 60 -> 70입니다. 마지막으로 위치 5와 6의 요소가 바뀌어 20 -> 10 -> 40 -> 30 -> 60 -> 50 -> 70이 됩니다.

이제 이 문제 진술을 구현하기 위한 알고리즘을 이해해 보겠습니다.

알고리즘

  • 연결된 목록의 헤드를 입력으로 사용하는 pairwiseSwap(head)라는 함수를 만듭니다.

  • 현재 노드를 저장하기 위해 임시 변수 temp를 초기화하고 이를 연결 리스트의 선두에 설정합니다.

  • 2단계 크기로 연결된 목록을 반복합니다. 즉, 한 번에 두 개의 노드를 이동합니다.

  • 각 노드 쌍에 대해 해당 값을 바꿉니다.

  • 다음 노드 쌍으로 이동합니다.

  • 연결된 목록의 끝에 도달하거나 더 이상 교환할 쌍이 없을 때까지 이 과정을 계속하세요.

  • 수정된 연결 목록 헤더를 반환합니다.

그러므로 알고리즘을 이해한 후 JavaScript의 도움으로 구현하는 예제를 통해 구현해 보겠습니다.

예: JavaScript를 사용하여 구현

위 프로그램은 주어진 연결 목록의 요소 쌍별 교환을 구현합니다. Node 클래스를 사용하여 연결리스트의 노드를 표현하고 pairwiseSwap() 함수를 사용하여 인접한 노드의 값을 쌍으로 교환합니다. 프로그램은 먼저 주어진 요소 집합으로 연결 목록을 만들고, 원래 연결 목록을 표시하고, pairwiseSwap() 함수를 사용하여 쌍 단위 교환을 수행한 다음, 교체된 요소가 포함된 업데이트된 연결 목록을 표시합니다.

입력: 원래 연결 목록: 1 -> 2 -> 3 -> 4 -> 5 -> null

예상 출력: 쌍별 교환 후 연결 목록: 2 -> 1 -> 4 -> 3 -> 5 -> null

으아아아

결론

요약하자면, 이 튜토리얼에서 제공되는 JavaScript 프로그램은 주어진 연결 목록에서 요소를 쌍으로 교환하는 효율적인 솔루션을 보여줍니다. 알고리즘은 연결된 목록을 반복하여 인접한 요소를 쌍으로 교체하여 교체된 요소로 업데이트된 연결된 목록을 생성합니다. 이 솔루션은 연결된 목록 작업 중에 요소 교환이 필요한 다양한 시나리오에 유용합니다. 이 프로그램을 구현하면 JavaScript를 사용하여 연결 목록의 요소 쌍을 쉽게 교환할 수 있습니다.

위 내용은 주어진 연결 리스트의 요소를 쌍으로 교환하는 JavaScript 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제