요새 졸리네요. 코딩 테스트를 개최하면서 여러 코드를 보았는데요. 2회 코테가 의외로 1번부터 막히는 경우가 많았는데요. 아마도 정렬과 비교 함수의 메커니즘에 대해서 익숙하지 않아서 그러셨을 겁니다. strict weak ordering은 이펙티브 자바에서도 언급하는 주제이니 다른 조심해야 할 점을 언급해 볼게요. 이 질문과 이 질문은 제가 오늘 쓰려는 글과 관련이 깊습니다. 결론부터 말하자면, 정렬 문제에서 전처리 할 부분을 미리 전처리 하고 오면 로직이 단순해 집니다. 그러면 실수할 여지도 적습니다. 그리고 크기가 n인 배열을 정렬할 때 키 2개를 비교하는 compare 함수는 O(nlogn)번 호출됩니다. 이 글에서는 compare 함수가 어떻게 동작하나요? 에 대해서는 다루지 않습니다. 어떻게 정..
Compare 검색 결과
Notepad++은 제가 많이 이용하는 편집기입니다. 대회 출제할 때에도 썼고, 검수할 때도 많이 썼습니다. 언어 편집기 기능도 있기 때문에, 컴파일러만 깔려 있으면 인텔리제이나 파이참이 없어도 쉽게 코딩할 수 있었기 때문입니다. 이 프로그램을 쓰면서 제가 많이 이용한 플러그인 중 하나는 Compare 였습니다. 기본적으로 제공되지는 않으므로, 설치하시면 됩니다. 설치는 그렇게 복잡하지 않습니다. 플러그인 관리에서 Compare를 찾고, 설치하시면 됩니다. 그러면, 제가 이 플러그인을 언제 어떻게 썼는지 시나리오로 알아보겠습니다. 가희야 거기서 자는 거 아니야 문제에서 제가 풀이 및 검수 코드로 acmicpc stack에 작성한 것들을 가지고 비교해 보겠습니다. 이 코드는 맞습니다. 그런데 이 코드가 자..
안녕하세요. chogahui05입니다. sort 함수의 비교 함수를 작성하실 때, strict weak ordering을 만족하게 작성하여야 한다는 말을 많이 들으셨을 거에요. 그렇게 작성하지 않으면 어떻게 될까요? 라는 질문은 사실 별로 의미가 없어 보입니다. 비교 함수가 무조건 true를 리턴하게 작성이 되었을 때 어떤 일이 일어날까요? 너무 멍청한 코딩인가요? 처음 비교함수를 작성하실 때, 이런 식으로 코딩하시지 않으셨나요? 위와 같이 작성이 되었을 때, 어떤 일이 일어날까요? 사실 배열에 들어간 데이터들을 보았을 때, 이 경우도 무조건 compare 함수가 true를 리턴하게 되어 있어요. 똑같은 상황인 셈입니다. se.cpp입니다. 이 프로그램의 내용을 봅시다. 이 경우에 프로그램이 어떻게 실행..
최근댓글