"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 개체의 ID 속성을 기반으로 배열 항목을 효율적으로 찾으려면 어떻게 해야 합니까?

개체의 ID 속성을 기반으로 배열 항목을 효율적으로 찾으려면 어떻게 해야 합니까?

2024년 12월 23일에 게시됨
검색:438

How Can I Efficiently Find an Array Entry Based on an Object\'s ID Property?

객체 속성을 기반으로 배열 항목 식별

각각 "ID" 속성을 갖고 있는 객체 배열을 생각해 보세요. 변수 "$v"에 저장된 특정 "ID" 값에 해당하는 항목을 찾기 위해 다음과 같은 몇 가지 접근 방식을 탐색합니다.

1. 반복 검색

여기에는 배열을 순차적으로 반복하여 각 개체의 "ID" 속성을 원하는 값 "$v"와 비교하는 작업이 포함됩니다.

$item = null;
foreach($array as $struct) {
    if ($v == $struct->ID) {
        $item = $struct;
        break;
    }
}

이 방법은 일회성 검색에 적합하지만 대규모 데이터세트에는 비효율적일 수 있습니다.

2. 해시맵 접근법

또는 다른 연관 배열을 사용하여 해시맵을 구성할 수 있습니다.

$HashMap = [];
foreach ($array as $struct) {
    $HashMap[$struct->ID] = $struct;
}

$item = $HashMap[$v];

이 접근 방식을 사용하면 "ID" 값을 키로 사용하여 원하는 항목에 직접 액세스할 수 있지만 추가 메모리 오버헤드가 필요합니다.

따라서 접근 방식의 선택은 검색 작업의 빈도와 규모에 따라 달라집니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3