a가 어떤 숫자일때
if a == 12345: 하는거랑
if a == '12345': 하는거 속도 차이 많이남?
숫자비교가 더 빠르다고 가정하자
그럼 스트링을 int(a) 이렇게 int로 바꾼다음에 비교하는게 나을정도로 속도차이 많이나냐?
a가 어떤 숫자일때
if a == 12345: 하는거랑
if a == '12345': 하는거 속도 차이 많이남?
숫자비교가 더 빠르다고 가정하자
그럼 스트링을 int(a) 이렇게 int로 바꾼다음에 비교하는게 나을정도로 속도차이 많이나냐?
int(a) 에 드는 시간은 어쩔거임 저거 고려하면 도찐개찐일거 같은데
그래서 물어본거임
백준 풀다가 모르겠어서 구글링했는데 저런 코드가 있길래 그냥 문자열로 비교하는게 낫지않나 싶어서 물어봄
세상 어떤 언어가 저딴 문법을 지원하지?
파이썬
'bash'
정 궁금하면 직접 벤치마크 해봐
어차피 파이썬이니까 파이써닉한 방법 쓰셈
보기만해도 토나오는 구문이군요
스트링을 int 로 바꾸고 비교 하는게 더 시간이 오래걸림. 스트링을 비교는 lexicographical comparison 으로써 첫 문자가 다르면 O(1). 문자가 다 똑같으면 O(m), m = len(string).
맞네
오 디씨에서 이런 댓글을 - 프로이직러
당연히 int(x) 쪽이 더 오래 걸리지
서비스 운영중에 예상치 못한 버그 일으키기 싫으면 명백하게 숫자로 비교해라. 어설픈 성능 고려할 시간에 깔끔한 코드를 만들생각해라