문제

엄격하게 구현 및 컴퓨터 과학 관점에서 PHP 배열 데이터를 어떻게 분류 하시겠습니까? 연관 배열입니까? 해시? 사전? ...?

도움이 되었습니까?

해결책

로부터 PHP 매뉴얼:

PHP의 배열은 실제로 주문한 맵입니다. 맵은 값을 키에 연결하는 유형입니다. 이 유형은 여러 가지 용도로 최적화됩니다. 배열, 목록 (벡터), 해시 테이블 (맵 구현), 사전, 컬렉션, 스택, 큐 등으로 취급 할 수 있습니다.

다른 팁

글쎄, 그것은 당신이 그것을 어떻게 분류하고 싶은지에 달려 있습니다. 운영 성능으로 분류를 선택했습니다.

예를 들어, 컴퓨터 과학 용어의 실제 배열에는 O (1) 조회 시간이 있고 링크 된 목록에는 O (n) 조회 시간이 있습니다. 삽입 및 삭제는 링크 된 목록에 O (1)가 배열에 O (N) 인 경우 O (1)입니다.

PHP 배열의 실제 성능이 무엇인지 잘 모르겠지만, 몇 가지 기본 작업을 측정하고 '진정한 컴퓨터 과학 데이터 구조'에서 기대되는 것과 비교하면 분류 할 수 있어야합니다.

제 생각에는 그것을 정의하기가 약간 어렵습니다. 하지만 연관 배열에 대한 정의 된 작업의 대부분이 PHP 배열에서 사용할 수 있기 때문에이를 연관 배열로 분류 할 것이라고 생각합니다.

그것은 당신이 실제로 정의하고 싶은 것에 달려 있습니다. ㅏ 사전 또는 지도 데이터 유형의 동작을 말하면 해시 맵 여기의 특정 구현을 나타냅니다. 용어 정렬 약간 착색입니다 - 엄밀히 말하면, 그것은 콘크리트 구현을 말하지만 목록 어레이와 같은 데이터 유형을 나타내는 일반적인 용어입니다. 그러나 사용하는 것은 매우 일반적입니다 정렬 동의어로 목록.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top