목록학습/TIL (50)
susinlee 님의 블로그
SQL 블로그 정리는 주말내로 마무리가 될 것 같다. 정리를 끝맞치면 다시 SQL 코드카타를 계속 풀어나가고 푼 것을 TIL 작성 시간에 정리하는 시간을 가져야겠다. 다음 주 부터는 파이썬을 블로그에 정리하게 될텐데 SQL처럼 처음부터 끝까지 다하는 것보다는 현재 수준에서 어려웠던 것들이나 내 생각하기에 괜찮은 아이디어로 푼 것들, 혹은 내가 생각하지 못한 아이디어로 푼 코드들에 한에서 정리해야겠다. 데이터 문해력, 데이터 리터러시, 파이썬 종합반을 완독, 완강했다. 다음 주에는 지금 하고 있는 어쩌다 데이터 분석을 마무리할 것 같다. 주말내로도 시간을 좀 낸다면 할 수 있을 것 같다. 그러면 코드카타에 좀 더 집중할 시간이 생길 것 같긴한데 너무 코딩테스트에만 집중하진 않으려고 한다. 단기간에 막 실..
오늘 QCC 본거 정리하자. 일단 둘 다 패스했다. 2번 문제를 3가지 방식으로 풀었는데 한 가지 더 추가해서 4가지로 풀어보고 서브상관쿼리와 윈도우함수에 대해 복습하는 시간을 갖자. 문제: 각 대륙에서 인구가 가장 많은 도시를 조사해야한다. 도시 이름, 국가 이름, 대륙, 도시 인구수를 출력하자 단계별 풀이 1. 두 테이블을 조인해주자. city.countrycode와 country.code를 연결하고 대륙별로 group by 한 후 city의 인구 수 중 가장 큰 애들만 가져오자. 2. 이를 하나의 테이블로 보고 조인으로 먼저 풀어보자해당 테이블을 sub으로 city와 country가 합쳐진 테이블에 country.continent 를 기준으로 JOIN해주자 다음 조건절로 마무리 (sub max(c..
이것저것 빨리 배우고 숙달하고 싶은데 진도가 잘 빠지진 않는다 쩝 느려도 괜찮나
배열 (리스트) : 같은 타입(객체의 주소값)의 변수들로 이루어진 집합. 메모리의 연속공간에 값이 채워져 있는 형태장점: 검색 성능이 좋다 O(1)단점: 값의 삽입과 삭제에서 비효율적 O(n). 메모리 활용에 비효율적연결리스트 (deque) : 값과 주소를 묶은 노드를 주소로 연결한 자료구조 (deque는 이중 연결리스트)장점: 주소로 연결되어 있어 값을 삽입하거나 삭제하는 연산의 속도가 빠름 O(1)단점: 원소로 바로 접근이 불가능함. Head부터 차례대로 접근 O(n)리스트에서 pop(0)을 할 경우 O(n), insert(0, x)을 할 경우 O(n)deque에서 popleft()을 할 경우 O(1), appendleft(x)을 할 경우 O(1) deque의 roate(k) 는 시간복잡도 O(k)를..
SQL 코드카타 29번까지 블로그에 정리하였다. 빠르게 76번까지 끝내고 파이썬 코드카타 문제들도 정리해보자. 파이썬 코드카타 문제들은 어떻게 해결하면 좋을지 아이디어를 떠올리고 해당 아이디어를 의사코드나 일반 언어로 적어보자. 그 뒤에 코드를 작성하고 시간복잡도도 분석해보는 방식으로 정리를 하자. 데이터프레임 groupby와 pivot_table, crosstab 부분을 마무리했다. 내일은 날짜, 시간 타입에 대해서 배울 예정이다. 복습과 실습이 많이 진행되어야할 것 같다. 한두번 가지고는 잘 기억에 남지 않을 것 같다. 자료구조, 알고리즘을 책과 강의를 통해 병행하고 있다. 이번 과정이 끝날 때쯤 기본적인 자료구조와 알고리즘에 대해서 완전히 숙지하고 프로그래머스 lv2 까지 풀 수 있도록 꾸준히 해보자.
오늘은 블로그에 그동안 풀었던 코드카타 문제들을 정리하는 시간을 가져보았다. 티스토리는 하루 게시글 작성이 15개로 제한되어 있는지라 15문제까지만 정리를 하였는데 아마 이번 주 내로 SQL은 정리가 마무리될 것 같다. 정리는 다음과 같이 하고 있다.문제단계별 풀이정답이 중 2번에서 코드를 어떻게 풀어갈지에 대한 흐름을 작성하는 것이 SQL 실력향상에 도움이 될 것이라고 생각하고, 복습할 겸 정리를 해볼 생각이다. SQL 정리를 끝내면 파이썬 코드카타 문제들도 정리할 생각인데 파이썬 문제들은 어떻게 정리를 해야할지 고민중이다. 문제를 어떤 식으로 풀지 제시해야할 것이고 시간복잡도도 고려해서 어떤 자료형을 쓸 것인지 어떤 함수(알고리즘)을 쓸 것인지도 설명해야할 것 같다. 아무튼 계획은 그렇고 다음 주 내..
프로젝트가 끝이났다. 팀원들과 함께 작업하면서 재밌었고 많이 배워갈 수 있었던 것 같다. 발표도 목표로 했던 7분에 맞게 잘 해가지구 홀가분하게 남은 공부들을 진행할 수 있을 것 같다. 또 오늘 SQLD 시험 사전점수가 발표되는 날이었는데 프로젝트 발표가 끝나고 딱 발표되었다. 합격이었다. 굿굿 뿌듯한 하루였고 덕분에 뿌듯한 한주가 되었다. 2월인가 3월에 진행하는 adsp도 합격해서 2개 자격증을 갖고 수료할 수 있었음 좋겠다. 담주부터는 새로운 팀원들과 파이썬을 배운다고 한다. 미리미리 연습좀 해놓고 좋은 출발할 수 있도록 하자
1. DISTINCT(중복제거) 활용하기중복 제거를 하지 않으면 우유, 우유일 경우에도 2가 나와버림 (DISTINCT을 사용하지 않는다면?)HAVING SUM(CASE WHEN NAME = 'Milk' THEN 1 ELSE 0 END) > 0AND SUM(CASE WHEN NAME = 'Yogurt' THEN 1 ELSE 0 END) > 0HAVING에 조건을 나열 2. IN 연산자로 (조건 OR 조건) 대체하기 J.TOTAL_ORDER와 F.TOTAL_ORDER를 각각 SUM 해줘서 더해혹은 더해준 뒤에 SUM 해줘도 되고..해당 부분을 ORDER BY 절에 바로 써도 되지만 가독성이 나쁨 JOIN 이 일반적으로 서브쿼리 이용하는 것보다 효율적임다만 조인 조건이 많아지면 가독성이 나빠지니 대규모 ..