우선 이 글은.. 한번의 업데이로 끝나지 않음을 말씀드립니다.
계속해서 제가 관련자료를 찾아 보고 말씀드리겠습니다.
1. php의 array는 자바의 list와 전혀 다르다.
java에서 쓰이는 LIST 라는 data structure와는 다름니다. php에서는 쓰이는 array는 sorted map에 기반됩니다.
이것을 통해 우리는 몇가지를 생각해 볼 수 있습니다. 바로 complixity (복잡도)입니다.
List에서 하나의 element를 remove할때의 complicity는 O(n)입니다. 왜냐하면, 우리가 Big-O를 이야기 할때는 worst case를 이야기 하기 때문이지요.. 다시 이야기 하면. List에서 첫번째 element를 제거할때는 모든 element가 빈자리를 이동하게 되므로 O(n)이 됩니다. 하지만, php에서는 array라는 data structure를 이용하지만, 실질적으로 그것은 map이라는 data structure을 기반하기 때문에. O(1)이라고 보여집니다.
계속해서 제가 관련자료를 찾아 보고 말씀드리겠습니다.
1. php의 array는 자바의 list와 전혀 다르다.
java에서 쓰이는 LIST 라는 data structure와는 다름니다. php에서는 쓰이는 array는 sorted map에 기반됩니다.
이것을 통해 우리는 몇가지를 생각해 볼 수 있습니다. 바로 complixity (복잡도)입니다.
List에서 하나의 element를 remove할때의 complicity는 O(n)입니다. 왜냐하면, 우리가 Big-O를 이야기 할때는 worst case를 이야기 하기 때문이지요.. 다시 이야기 하면. List에서 첫번째 element를 제거할때는 모든 element가 빈자리를 이동하게 되므로 O(n)이 됩니다. 하지만, php에서는 array라는 data structure를 이용하지만, 실질적으로 그것은 map이라는 data structure을 기반하기 때문에. O(1)이라고 보여집니다.
'학습 > Programming' 카테고리의 다른 글
| 아마존 EC2 레저브드 마이크로 인스턴스 설치 (Amazon EC2 reserved micro instance) (0) | 2012/02/20 |
|---|---|
| 아마존 EC2 인스턴스 ( Amazon EC2 Instance ) 선택에 대한 고민 (0) | 2012/02/20 |
| Python(파이썬) 어떤 버젼을 선택해야 하나? (0) | 2012/02/19 |
| 리눅스(Linux) RPM 뭔가? (0) | 2012/02/19 |
| php array complicity ( php array의 복잡도 ) (0) | 2011/04/04 |
| git clone 할때 원하는 위치 지정하는 방법 (0) | 2011/04/04 |
| Python vs. Ruby | 파이손, 루비 어떤 언어의 선택시 참고하면 좋은 글. (4) | 2010/06/29 |
| VMware, 리눅스(linux) 설치방법 (3) (8) | 2010/04/16 |
| VMware, 리눅스(linux) 설치방법 (2) (14) | 2010/04/16 |
| VMware, 리눅스(linux) 설치방법 (1) (2) | 2010/04/16 |
| VMware 쉬운 설치방법 (0) | 2010/04/16 |



댓글을 달아 주세요