반응형

del 2

파이썬 pop의 시간 복잡도에 대한 고찰(맨 뒤, 중간, 맨 앞 위치 비교 및 remove/del과의 비교)

Python pop() 함수의 시간 복잡도는 O(1)인가? 파이썬으로 원소를 제거하는 pop 함수의 시간 복잡도는 흔히 O(1)으로 알려져있지만 이 사항에는 맨 뒤 원소를 제거하는 상황이라는 조건이 반드시 필요합니다. 이번 글에서는 이에 대한 고찰을 간단한 예시 비교를 통하여 진행해보도록 하겠습니다. 1. 맨 뒤 위치 원소 pop : O(1) pop 함수를 pop()처럼 default 인자로 사용할 경우 맨 뒤 위치(-1번 인덱스)가 자동으로 지정되어 사용되는데, 이 경우는 맨 뒤의 원소만 제거하고 기존 원소들은 그대로 놓아둘 수 있으므로 O(1)의 시간 복잡도가 맞습니다. 1천만개의 원소를 가진 리스트에서 1만번 pop을 진행시켜본다면 실제로 아래와 같이 약 0.002초 만에 완료된 모습을 볼 수 있습..

파이썬 del 명령어의 기능, 자료형별 사용 예제 정리

파이썬의 자료 삭제 명령어 del 사용법 파이썬에서 선언했던 자료를 지울 수 있는 del 명령어에 대하여 리스트, 딕셔너리, 문자열 및 내장 함수를 예시로 기능과 사용법을 살펴보겠습니다. del 변수 형태의 코드는 자료형에 상관없이 기본적으로 해당 변수의 선언 자체를 무효화시킵니다. del 사용 case 1 : 리스트 del 명령어의 기본 기능(자료 전체 삭제)을 사용하는 방법인 del list 형태로 리스트의 선언 자체를 무효화(빈 리스트로 만드는 것이 아닙니다.)할 수 있으며 del list[0] 혹은 del list[0:2] 형태처럼 인덱싱 혹은 슬라이싱 위치에 있는 특정 원소들만을 골라서 제거하는 기능도 지원합니다. list_ex = [1, 3, 5, 7, 9] # 인덱싱 형태로 리스트의 특정 원..

반응형