해결된 질문
작성
·
172
0
안녕하십니까! 강의 정말 잘 듣고 있습니다!
다름이 아니라 list의 임의 접근 문법이 막힌 이유에서 속도차이에 대해서 뭔가 팍!하고 와닿지 않아 질문드립니다.
vector같은 경우 '연속된'주소에 데이터가 저장되기 때문에 n번째 데이터는 ++연산으로 '바로 옆주소' 로 이동하여 찾는다. 그렇기 때문에 비교적 빠르게 찾을 수 있다.
하지만 list의 경우 연속되지 않는 다른 어딘가에 다음 값을 저장하고 그 주소로 가는 주소값을 들고 있는데 vector와는 다르게 일일이 '주소값을 타고 워프'를 해줘야하기 때문에 시간이 많이 걸린다.
라고 이해를 했지만 위 두 경우의 속도 차이가 문법을 막을 만큼 차이가 어마어마하게 나는 건가요?!
답변 1
0
아..! 뭔가 제가 다르게 이해하고 있었던 것 같네요
백터는 어차피 서로 연속된 주소이니 순서대로 하나하나 찾아 볼 필요 없이 바로 접근이 가능하고
리스트는 그렇지 않으니 데이터가 많을 수록 그만큼 타고가야해서 오래 걸리는 거군요!
무의식적으로 백터도 임의 접근할 때 마치for문을 돌린 것 마냥 찾는다고 생각하고 있어서 감이 안 왔던 것 같습니다.
지금보니 다소 어이없는 질문이었네요ㅎㅎ.. 감사합니다!