컴공 일기271
게시글 주소: https://orbi.kr/00071636665

https://school.programmers.co.kr/learn/courses/30/lessons/159994
문제 자체는 평이한 수준입니다.
다만, 이 문제를 벡터 관점으로 풀 거냐 큐 관점으로 풀 거냐인데…
알고리즘적 성능으로만 보면 벡터 관점으로 보는 것이 훨 나아 보입니다.
큐로 풀긴 했지만요…
문제 조건에서 card 벡터 내에서 element 순서를 뒤바꿀 수 없다고 했으므로
선형 자료구조인 큐를 연상하는 것도 좋지만, 그저 근본으로 배열의 index로 접근해
모든 원소를 탐색해도 좋다는 얘기입니다.
실제로 Queue 자료구조는 pop과 push연산이 이루어질 때 모든 원소가 한 칸씩 밀리거나 당겨져, 시간복잡도가 O(N)인 반면 idx 접근은 그런 오버헤드(낭비)를 감수할 필요가 없습니다. 배열의 탐색 시간복잡도는 O(1)이기 때문이죠.
또 한 가지 팁이 있다라면… vector<string>에 대해 범위 기반 for문을 돌리므로
필연적으로 string 객체 복사생성 오버헤드도 고려해야 합니다. 따라서 auto i로 선언하는 것이 아닌 조금 더 명확히
const auto& i로 선언해주어야 불필요한 오버헤드를 줄일 수 있습니다.
업계엔 그런 말이 있죠. 이 사람의 코드에서 const를 어디다 붙여놨는지만 봐도 실력과 싹수가 보인다구요.
알고리즘에서 그런 것까지야 따질 필요는 없겠습니다만, C++에서는 기본 덕목 중 하나가 아닌가 합니다.
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
눈 ㅇㅈ (무서움 주의) 8 1
불끄고 찍음 지움
-
안녕하세요 :) 디올러 S (디올 Science, 디올 소통 계정) 입니다....
-
여잔 마스크만쓰면 예뻐보여 7 3
정상체중이기만 하면 눈화장 앞머리 내림으로 존예 커버가능하더라
-
ㅇㅈ 바겐세일 6 0
그냥 잘나온 사진들 다뿌림 히히
-
근데 여러분들은 왜 안자요? 6 0
내일 아침에 일어나야하지 않나요?
-
얼굴은 앵간만하는데 키크고 개잘먹게 생김...... 교복입고 엘베탔을때 어르신들한테...
-
생화학 테러로 신고당하고 폐쇄될 수 있음
-
난 재능인거같음 중학생보다 그림을 못그리니..
-
술한잔햇어여 9 1
으으 취한다
-
반!카이! 3 0
하아아아
언젠가 진짜 다 읽어볼 거
언젠가 알게 되시겠지만… 난잡한 에세이로 보이실 겁니다….
모쪼록 감사드립니다.