Python input(),sys.stdin.readline() 의 시간 복잡도

BellBoy·2023년 5월 6일
0

❓ 파이선 input과 sys.input()의 시간 복잡도를 설명해줘

💡Python에서 input()은 표준 입력(일반적으로 키보드)에서 한 줄을 읽고 문자열로 반환하는 내장 함수입니다. input()의 시간 복잡도는 입력 라인의 크기에 따라 다르지만 일반적으로 O(n)의 시간 복잡도를 갖는 것으로 간주됩니다. 여기서 n은 입력 문자열의 길이입니다.

반면 sys.stdin.readline()은 파이썬의 sys 모듈에서 제공하는 메서드로, 표준 입력에서 한 줄을 읽어 문자열로 반환합니다. input()과 비교할 때 sys.stdin.readline()은 일반적으로 입력 라인을 이진 문자열로 읽고 입력 라인을 텍스트 문자열로 구문 분석하는 오버헤드를 피하기 때문에 더 빠릅니다. sys.stdin.readline()의 시간 복잡도도 O(n)입니다. 여기서 n은 입력 문자열의 길이입니다.

그러나 input()과 sys.stdin.readline() 간의 실제 성능 차이는 입력 크기, 플랫폼 및 Python 인터프리터의 구현과 같은 다양한 요인에 따라 달라질 수 있습니다. 일반적으로 Python에서 많은 수의 입력 라인을 읽어야 하는 경우 input() 대신 sys.stdin.readline()을 사용하여 코드 성능을 향상시키는 것이 좋습니다.

profile
리액트러버

0개의 댓글