Coding test7 0x02 기초 코드 작성 요령 2 https://blog.encrypted.gg/923 [실전 알고리즘] 0x02강 - 기초 코드 작성 요령 II 안녕하세요, 바킹독입니다. 이전 단원에서 오지고 지리게 고통받으셨을텐데 이번에는 훨씬 쉬우니까 걱정을 덜어내시고 마음 편하게 보시면 됩니다. 저 아직 0x18살이니까 급식체 써도 되는거 blog.encrypted.gg 1. STL과 함수 인자 STL vector 변수를 인자로 넘길 때 그냥 넘기면 그냥 복사을 넘기는 것이기 때문에 구조체와 마찬가지로 수정을 해도 원본 값은 바뀌지 않는다. STL vector를 인자로 넘기면 복사가 되기 때문에 시간 복잡도가 O(N)이 될 수 있다. -> 참조자를 이용해야 한다. scanf/printf는 C++ string을 처리 할 수 없다. scanf/pri.. Coding test/바킹독님 알고리즘 2023. 12. 18. 0x01 기초 코드 작성 요령 1 https://blog.encrypted.gg/922 [실전 알고리즘] 0x01강 - 기초 코드 작성 요령 I 안녕하세요, 바킹독입니다. 이번 단원에서는 기초 코드 작성 요령을 익혀보려고 합니다. 목차를 보셨으면 알겠지만 기초 코드 작성 요령이 두 강으로 나눠져있는데 앞으로 코드를 잘 짜기 위해 blog.encrypted.gg 00 시간, 공간 복잡도 풀기 전에 시간 제한 내에 풀 수 있는지 생각 후 구현을 해야 한다. 512MB = 1.2억개의 int 01 정수 자료형 2's complements Integer overflow +-21억 02 실수 자료형 3가지 성질 1. 실수, 저장 연산에는 오차 생긴다. 2. double에 longlong함부로 담으면 안된다. 3. 실수 비교시 등호 사용 안된다. Coding test/바킹독님 알고리즘 2023. 12. 18. 0x00 오리엔테이션 책 사서 공부할까 하다가 바킹독님이 엄청 고수시고 쉽게 알려주시는 거 같아서 이를 보고 공부를 하기로 했다. 3달 안에 완강하고 문제도 많이 풀어 보는 것을 목표로 하고 강의를 듣고 요점을 정리하며 복습해야겠다.. https://blog.encrypted.gg/921 [실전 알고리즘] 0x00강 - 오리엔테이션 안녕하세요, 바킹독입니다. 리뉴얼을 완료해서 다시 강의를 올립니다. 혹시 코딩테스트를 대비하고자 하는 목적으로 검색하다가 이 강좌를 보게 된거라면 지금 이 강좌가 정말 큰 도움이 된다 blog.encrypted.gg 8시간씩 하면 2달 안에 가능하고 그렇게 못하면 4달 정도 걸린다. 시간 없으면 0x11 그리디 까지가 많이 나오니 여기까지 보고 기출 많이 풀어도 승산 있다. 시간, 메모리 제한 안.. Coding test/바킹독님 알고리즘 2023. 12. 5. 2. 동적배열 구현 Q1. vector를 구현해 보는 이유는 무엇인가요? A1. 첫번째 이유 : 나머지 자료구조 학습하는데 기초가 되기 때문에 두번쨰 이유 : 코딩 테스트에 가끔 나오기 때문 Q2. vector 의 특징을 size와 capacity의 관점에서 말해 보세요 A2. size는 실제 원소의 개수고, capacity는 할당된 데이터의 크기다. size가 capacity의 양만큼 늘어나면 1.5배로 capacity를 증량하고, 기존의 데이터를 증량한 capacity로 옮긴다. 데이터를 삭제해서 size가 0이 되어도 capacity의 수는 변하지 않는다. Q3. vector를 구현해보세요. (생성자, 소멸자, push_back, reserve, operator[], size, capacity, clear만 제한적으로.. Coding test/자료구조 알고리즘 2023. 8. 25. 1. 배열, 동적 배열, 연결 리스트 Q1. 배열, 동적 배열, 연결 리스트 각각의 특징과 장단점을 말해보세요. A1. 배열: array 특징: 방의 개수 고정, 연속된 방 단점: 방을 추가/축소 불가 동적 배열: vector 특징: 사용할 방의 개수 유동적 계약, 연속된 방 장점: 유동적인 계약 단점: 이사 비용, 중간 삽입/삭제 느림 할당 정책: 이사할 때 사용할 방보다 많이 여유분을 두고 1.5~2배 예약해서 이사 횟수를 최소화 연결 리스트: list 특징: 연속되지 않은 방을 사용 장점: 중간 삽입/삭제 단점: N번째 방을 바로 찾을 수가 없음(임의 접근 Random Access 불가) Q2. 선형과 비선형 자료구조의 차이에 대해 말해 보세요 A2. 선형 vs 비선형 선형: 배열, 연결 리스트, 스택/큐 (자료를 순차적으로 나열한 형.. Coding test/자료구조 알고리즘 2023. 8. 25. 0. BIG-0 표기법 같은 기능을 만들 더라도 너무 느리게 만들면 안되겠죠? 같은 기능의 알고리즘이라도 어떤 알고리즘이 더 빠르고, 느린지 판단하기 위해서 구분할 수 있는 기호나 기준이 있어야 할 것입니다. 그 때 필요한 것이 BIG-0 표기법입니다. O는 Order Of라고 읽습니다. 대락적으로 연산의 개수가 몇개인지로 판단할 수 있습니다. 규칙1. "영향력이 가장 큰 대표 항목만 남기고 삭제 한다" 입니다. 2. "상수를 무시한다."입니다. 예를 들어 2N은 N으로 표기합니다. 빅오 표기법에서 log가 나오는데 log는 무슨 의미 일까요? 출처: https://www.freecodecamp.org/news/all-you-need-to-know-about-big-o-notation-to-crack-your-next-codi.. Coding test/자료구조 알고리즘 2023. 8. 25. 코딩 테스트를 마스터하기 위한 전략 이번달에 두번의 코테를 봤는데 첫번째에선 0점을 맞았고, 연휴동안 공부를 한 뒤 본 코테에서는 반타작을 하였다. 알고리즘 강의를 듣고 연습문제를 풀고 봤지만 반타작밖에 못한 이유는 강의를 봤어도 알고리즘을 확실히 이해하지 못했기 때문에 문제를 봐도 어떤 알고리즘을 적용해 풀어야 할지 떠올리지 못하고 그냥 상식에 의해 풀려고 했고, 재귀 함수라든가 구현하는 것에 서툴기 때문이었다. 그래서 나름의 전략을 짜 보았다. 개념의 경우는 루키스님의 C++ 알고리즘 강의를 복습하며 블로그에 정리를 한다. 강의를 들었지만 그냥 대강 그렇구나 이해하고 넘어갔기 때문에 확실히 정리하고 정리한 것을 기반으로 안보고 구현할 수 있어야 할 거 같다. 하나의 알고리즘을 공부했으면 그걸 적용할 수 있는 문제를 여러 개 푼다. 이런.. Coding test 2023. 8. 23. 이전 1 다음