PHP 함수에 대한 Big-O 시간 복잡도
이 기사에서는 가장 일반적으로 사용되는 일부 PHP 내장 기능에 대한 이론적 및 실제 Big-O 시간 복잡도를 정리합니다.
조회 함수
- isset( $array[$index] ) 및 array_key_exists: O(n)으로 분류됨에도 불구하고 이러한 함수는 O(1) 해시 조회에 가깝습니다.
- in_array: 배열을 통해 선형 검색을 수행하여 O를 생성합니다. (n) 복잡성.
- array_search: in_array와 유사하지만 O(n)으로 이어지는 값을 반환합니다. 복잡성.
큐 함수
- array_push: O(∑ var_i)
- array_pop: O(1)
- array_shift: O (n)
- array_unshift: O(n ∑ var_i)
배열 교차, 결합 및 빼기
- array_intersect_key: 100% 교차의 경우 O(Max(param_i_size) * ∑param_i_count) 또는 O (∑param_i_size)(0%) 교차로.
- array_intersect: 100% 교차의 경우 O(n^2 * ∑param_i_count) 또는 0% 교차의 경우 O(n^2)
- array_intersect_assoc: array_intersect_key와 유사합니다.
- array_diff: O(π 모든 매개변수의 경우 param_i_size).
- array_diff_key: 첫 번째 매개변수와 같지 않은 모든 매개변수의 경우 O(∑ param_i_size).
- array_merge: 첫 번째 매개변수를 제외한 모든 매개변수의 경우 O(∑ array_i)
- (union): 두 번째는 O(n) array.
- array_replace: 모든 매개변수에 대해 O(∑ array_i).
Random Functions
- shuffle: O(n)
- 배열_랜드: O(n)
명백한 Big-O 함수
- array_fill, array_fill_keys: O(n)
- 범위: O(n)
- array_splice, array_slice: O(오프셋 길이)
- array_keys, array_values: O(n)
- array_reverse: O(n)
- array_pad: O(pad_size)
- array_flip: O( n)
- 배열_합, 배열_제품: O(n)
- array_reduce: O(n)
- array_filter, array_map: O(n)
- array_chunk, array_combine: O(n)
위 내용은 일반적인 PHP 함수의 Big-O 시간 복잡성은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!