본문 바로가기
반응형

알고리즘80

[Python] LeetCode - 605. Can Place Flowers LeetCode 605번 Can Place Flowers 문제는 일렬로 나열된 화분에 꽃들이 서로 인접하지 않게 심는 문제다. 난이도는 Easy이며 Greedy하게 해결할 수 있다. 리트코드 605번 Can Place Flowers 문제 정보 알고리즘 분류 - Greedy 난이도 - Easy 문제 요약 일렬로 된 화분이 있고, 꽃은 다른 꽃과 인접해서 심을 수 없다. 0: 빈 화분, 1: 꽃이 심어진 화분 화분 리스트와 새로 심어야 할 꽃의 개수가 주어질 때, 모든 꽃을 심을 수 있는지를 구하라. 문제 풀이 과정 앞에서부터 한칸씩 탐색하면서 심을 수 있으면 심고, n개의 꽃을 모두 심으면 True 아니면 False를 반환한다. 코드 class Solution: def canPlaceFlowers(self.. 2023. 3. 20.
[Python] LeetCode - 208. Implement Trie (Prefix Tree) LeetCode 208번 Implement Trie (Prefix Tree) 문제는 문자열 탐색에 사용되는 Trie를 구현하는 문제다. 난이도는 Medium이다. 문자열 삽입, 탐색 메소드 및 추가적으로 startsWith 메소드를 구현해야 한다. 리트코드 208번 Implement Trie 문제 정보 알고리즘 분류 - Trie 난이도 - Medium 문제 요약 Trie는 다진 트리 형태의 자료 구조이며, 효과적으로 문자열 데이터를 저장 및 탐색한다. Trie 클래스를 구현하라. 문제 풀이 과정 트리 형태로 구현해야 하기 때문에 먼저 트리의 노드가 되는 Node 클래스를 정의한다. 노드에 필요한 값은 character (value), 현재 노드에 해당하는 값이 존재하는지 여부 (data), 그리고 자식 .. 2023. 3. 17.
[Python] LeetCode - 653. Two Sum IV - Input is a BST LeetCode 653번 Two Sum IV - Input is a BST 문제는 이진탐색 트리 내의 두개의 숫자로 target 숫자를 만들 수 있는지를 구하느 문제다. 난이도는 하(Easy)이며 Tree 관련 알고리즘을 통해 해결할 수 있다. 리트코드 653번 Two Sum IV - Input is a BST 문제 정보 알고리즘 분류 - Tree 난이도 - Easy 문제 요약 이진탐색트리가 주어지고 target 숫자가 주어졌을 때, BST 내의 두 숫자로 target 숫자를 만들 수 있는 지의 여부를 반환하라. 문제 풀이 과정 BST를 타고 내려가면서 타겟 숫자보다 현재 값이 작으면, 나머지 값이 트리에 있는지를 확인한다. 코드 # Definition for a binary tree node. # cl.. 2022. 11. 10.
[Python] LeetCode - 981. Time Based Key-Value Store LeetCode 981번 Time Based Key-Value Store 문제는 정해진 규칙대로 key-value store를 구현하는 문제다. 난이도는 중(Medium)이며 그리디 알고리즘을 통해 해결할 수 있다. 리트코드 981번 Time Based Key-Value Store 문제 정보 알고리즘 분류 - Greedy 난이도 - Medium 문제 요약 Time-based key-value store를 구성하라. key는 원래 중복될 수 없지만, 다른 시간에 동일한 key가 존재할 수 있다. 시간은 무조건 증가하는 순서로 주어진다. set(key, value, timestamp) 특정 key의 특정 timestamp의 value를 저장한다. get(key, timestamp) 특정 key의 특정 tim.. 2022. 11. 10.
반응형