Blog Content

  • python3로 Circular Queue 구현하기

    Category Algorithms on 2022. 9. 14. 22:14

    python3로 Circular Queue 구현하기 __ init __() 먼저 데이터 구조의 초깃값을 정한다. Queue의 크기를 k로 두고, 값을 담을 수 있게 길이가 k인 리스트 queue_list 를 만든다. Queue에는 두개의 포인터가 필요하다. 한개는 Front를 가리켜야 하고, 다른 하나는 Back을 가리켜야 한다. def __init__(self, k: int): self.size = 0 # 처음 리스트의 길이 self.max_size = k # 리스트의 길이 self.queue_list = [0] * k # Queue를 담을 리스트 self.front = self.rear = -1 # pointer enQueue() enQueue() 는 Circular Queue에 값을 삽입하는 함수이..

    Read more
  • [LeetCode] 9. Palindrome Number

    Category Algorithms on 2018. 4. 14. 11:59

    LeetCode_9.md Determine whether an integer is a palindrome. Do this without extra space. 주어진 정수가 회문인지 판단하라. 공백은 고려하지 않는다. Approch 1. Palindrome 회문이란 앞에서 부터 읽을 때와 뒤에서 부터 읽을 때가 같은 문장을 말한다 (ex) LEVEL, 12321, 다시합창합시다, 여기서는 공백은 고려하지 않는다. 2. Idea 숫자가 주어질 때 맨 앞과 맨 뒤부터 순차적으로 비교하면 회문인지 알 수 있다. 3. Solution 음수인지 아닌지 판단하고, 음수가 아니면 x를 뒤에서 부터 읽은 값과 x가 동일한지 판단한다. class Solution: def isPalindrome(self, x): if x..

    Read more
  • [LeetCode] 1. Two Sum

    Category Algorithms on 2018. 4. 13. 14:53

    LeetCode_1.md https://leetcode.com/problems/two-sum/description/ Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and you may not use the same element twice. 주어진 정수 배열을 이용하여, 임의의 두 수 합계가 타겟(target) 값이 되는 두 숫자의 인덱스를 반환해라. 각 입력에는 정확히 하나의 솔루션이 있다고 가정 할 수 있으며, 동일한 원소를 두 번 사용할 수 없다..

    Read more
  • BFS : Breadth-First Search 너비우선탐색

    Category Algorithms on 2018. 4. 13. 14:42

    [Algorithms] BFS : Breadth-First Search 너비우선탐색 Graph Algorithms shortest-path problem(최단경로 문제)을 해결할 때 사용한다. 순서 문제를 그래프로 모형화 너비 우선탐색으로 문제 해결 그래프 연결 집합을 모형화한 것을 그래프라고 한다. node와 edge로 이루어져 있다. 출처 : http://mathworld.wolfram.com/GraphEdge.html 너비우선탐색 개념 그래프 전체를 탐색하는 방법 중 하나이다. 너비우선탐색, 깊이우선탐색이 있다. Facebook에서 연결되는 사람(촌) 중에 과자 회사에 다니고 있는 사람이 있는지 찾으려고 한다고 가정해보자. A는 시작점인 '나'자신이고, B, C, D는 1촌, E, F..

    Read more