어제부터 LeetCode 사이트에서 SQL 문제를 풀고 있는데 장단점이 있는 것 같다.
약 20 문제를 풀었는데 문제의 다양성이랄까 푼 방법들이 다 비슷하지 않아서 좋다고 생각했다.
단점 2번에서 오는 장점이지만 테스트케이스를 모르다보니 예외처리에 대해 한번 더 생각해야 하는데 공부를 하는 입장에서는 장점이라 생각한다.
이전에 프로그래머스를 사용하다보니 비교를 하며 나오는 단점이지만 프로그래머스보다 처리속도가 느리다. 문제를 풀다가 막히면 테이블을 보기 위해 간단한 SELECT/FROM 문을 만들어 보는데 LeetCode는 run이든 submit이든 프로그램을 돌리는 속도가 조금 느린걸 체감했다.
testcase가 프로그래머스와 다른데 프로그래머스는 예시와 테스트케이스가 달라서 테스트케이스를 맞추며 문제를 풀이하면 되는데 LeetCode는 submit 전에 run을 사용하며 문제를 풀 때는 기본 예시가 테스트케이스인데 submit으로 넘기면 문제 자체의 테스트케이스를 적용해서 run에서 성공해도 실패하는 경우가 있다.
(지금 TIL을 적으면서 든 생각이지만 여러가지 테스트케이스를 시험해서 처리속도가 느린걸지도....)
submit을 하면 처리속도에 따른 전체 분포표가 나오는데 신뢰성이 떨어진다. 성공한 코드를 똑같이 다시 제출했는데 첫 제출 때는 중하위였는데 두번째는 상위권에 있었다. 제출할 때의 환경에 따라 처리속도가 다르게 나오는 듯