leetcode 937번 문제isdigit() : 스트링의 모든 character가 digit(숫자)면 True리턴, 아니면 False 리턴함.sort() : sort(\*, key=None, reverse=False)sort()는 key가 있는데 key를 사용해서 리
내 정답: 입력값 처음에는 아래처럼 했는데 이렇게 하면 위 처럼 값이 들어올 때 처음에 bob이 words에서 지워지고 words에는 \['hit', 'ball']이 남게 되는데 for문을 타면서 words의 맨 처음을 방문했으니 다음 word는 ball이 되면서 hi
했는데 시간 초과 나옴.출처
출처
시간 복잡도 : O(n^2)시간 복잡도 : in의 시간 복잡도가 O(n)이고 전체는 O(n^2)임. 딕셔너리가 해시 테이블로 만들어졌기 때문에 조회가 O(1)에 가능함. 최악의 경우 O(n)이긴한데 이거보다는 빠를거임.그냥 위랑 똑같은데 딕셔너리에 하나 넣을때마다 이미
문제
시간 초과나옴.
2n개의 정수를 n개의 짝으로 만들었을때 모든 짝에서 작은 값을 더했을때 가장 큰 합을 만들려면 정렬한 후에 홀수 번째 값을 더하는게 가장 큼.문제
문제
출처
파이썬 데크는 이중 연결 리스트여서 리스트 맨 앞꺼 빼도 시간 O(1)임.슬로우 러너는 연결 리스트 한 칸씩 이동하고 패스트 러너는 연결 리스트를 슬로우 러너의 2배인 2칸씩 이동해서 패스트 러너가 끝에 도달하면 슬로우 러너는 연결 리스트의 한가운데에 도달함.따라서 슬
문제
출처
문제https://leetcode.com/problems/add-two-numbers/submissions/
문제https://leetcode.com/problems/swap-nodes-in-pairs/submissions/
문제https://leetcode.com/problems/odd-even-linked-list/submissions/
문제https://leetcode.com/problems/reverse-linked-list-ii/submissions/
문제https://leetcode.com/problems/daily-temperatures/
문제https://leetcode.com/problems/implement-stack-using-queues/
문제https://leetcode.com/problems/design-circular-queue/
https://leetcode.com/problems/implement-queue-using-stacks/
여기서 그냥 아래처럼 해버리면heapq에서 내부적으로 <를 사용해서 대소 비교를 하기에 ListNode() 객체는 <를 못쓰니 에러가 나옴. 따라서 \_\_lt\_\_ 를 추가해 주거나여기처럼 그냥 인덱스로 추가 비교 할 수 있도록해주면 문제없음.https
separate chaining 방법들어갈 자리에 있으면 연결리스트로 그 다음에 채워줌.그냥 문제가 요구하는 대로 간단하게 푸는 방식https://leetcode.com/problems/design-hashmap/
딕셔너리를 사용한 해시 테이블로 풀 수 있음.https://leetcode.com/problems/jewels-and-stones/
https://leetcode.com/problems/longest-substring-without-repeating-characters/
https://leetcode.com/problems/letter-combinations-of-a-phone-number/submissions/
https://leetcode.com/problems/permutations/
https://leetcode.com/problems/combinations/submissions/
이렇게 찾을때까지 쭉 타는 방식으로 해결하면됨
1, 2, 3 일때\[], 1, 1, 2, 1, 2, 3, 1, 3, 2 이 순서대로 구함https://leetcode.com/problems/subsets/submissions/
JFK에서 출발해서 지나가는 경로들 다 빼주면서 끝에 도달하면 역순으로 저장해줌.JFK->A->B면 B에서 끝에 도달한거니 B, A, JFK로 저장하니 이제 구한거를 다시 뒤집으면 정답임.https://leetcode.com/problems/reconstruc
https://leetcode.com/problems/course-schedule/
https://leetcode.com/problems/network-delay-time/
방문한거 안세주면 순환해서 방문한거 세줘야함.https://leetcode.com/problems/cheapest-flights-within-k-stops/
BFS로 구해서 층 하나 내려갈 때마다 깊이에 +1 해주면됨큐를 그냥 리스트로 해도되는데 리스트의 pop(0)이 O(n)이기 때문에 deque를 사용하면 pop(0)이 O(1)이니 deque 사용하는게 더 좋음.https://leetcode.com/proble
https://leetcode.com/problems/diameter-of-binary-tree/
https://leetcode.com/problems/longest-univalue-path/
일반 배열로 하려했는데 그렇게 하면 인덱스 처리가 너무 복잡해서 딕셔너리로 하니 편해졌음.https://programmers.co.kr/learn/courses/30/lessons/67256
람다로 하면 한줄로 됨.람다는 lambda 매개변수 : 표현으로 할 수 있는데 map(함수, 리스트)사용해서 iterable을 하나씩 넣어줘서 해결할 수 있음.https://programmers.co.kr/learn/courses/30/lessons/42748
들어오는 데이터가 정렬되서 오는게 아니라서 정렬한 번 해줘야함.아래 처럼 하면 가독성이 올라감.\_reserve에는 내가 가져왔지만 도둑 맞지 않아서 남을 빌려줄 수 있는 애들만 넣어주고\_lost에는 도둑 맞았지만 여분을 가져와서 상관없는 애들을 제외해줌.그러면 이제
https://programmers.co.kr/learn/courses/30/lessons/87389?language=python3
https://programmers.co.kr/learn/courses/30/lessons/12921
zip()Iterate over several iterables in parallel, producing tuples with an item from each one.이므로 아래처럼 할 수도 있음.https://programmers.co.kr/learn/cou
https://programmers.co.kr/learn/courses/30/lessons/81301?language=python3