목록의 초기 버전을 일부 조정했는데 이제 Maziero 교수의 자료에 명시된 요구 사항을 충족합니다. 테스트를 통과하기 위해 조정했고 C에서는 readapt를 사용하기로 결정했습니다. 사용 가능한 테스트 파일과 함께 컴파일하면 문제가 덜할 것 같았습니다.
이 목록의 코드를 다시 검토하면서 이중 사슬 원형 목록 앞에 나오는 간단한 목록을 다시 검토해야 했기 때문에 코딩할 때 탄탄한 추론을 정리할 수 있었습니다.
각 노드가 값, 다음 노드에 대한 포인터, 이전 노드에 대한 포인터의 세 부분을 포함하는 구조입니다.
양방향 탐색이 가능하며, 노드를 제거하거나 추가하려면 이전 노드와 다음 노드의 지점만 조정하면 됩니다.
[head] <-> [nó1] <-> [nó2] <-> [tail]
간단히 연결(한쪽 방향)하거나 이중 연결(제가 프로젝트에서 사용하는 방식)일 수 있습니다.
목록의 마지막 노드가 첫 번째 노드에 연결됩니다. 이는 목록에 자연스러운 끝점이 없음을 의미합니다.
목록은 끝에 도달하면 처음으로 돌아가기 때문에 무한정 스크롤이 가능합니다.
순환 이중 연결 목록을 사용하면 운영 체제에 순환 확장 기능이 있습니다.
즉, 마지막 프로세스가 실행된 후 시스템은 첫 번째 프로세스로 돌아가 실행을 계속합니다.
운영 체제에 세 가지 프로세스가 있다고 상상해 보세요.
[P1] <-> [P2] <-> [P3] <-> [P1] ...
P3의 실행 시간이 끝나면 목록이 P1으로 직접 반환되어 지속적인 실행이 보장됩니다.
현재 운영 체제 코드는 여기에서 확인할 수 있습니다.
위 내용은 Dia - 이중 연결 순환 목록 재구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!