Programing/자료구조(Data structure)
-
[자료구조] Swift로 풀어보는 덱(Deque)Programing/자료구조(Data structure) 2020. 6. 17. 01:14
안녕하세요~! 5anniversary입니다. 이번 시간에는 자료구조에서 대표적인 유형 중에 하나인 덱에 대해 천천히 알아보며, Swift로 구현해보는 시간을 가져보겠습니다. 우선 덱에 대한 기본적인 구조를 알아보겠습니다. 덱에서는 앞에서 다루었던 스택. 큐와 다르게 양쪽 끝에서 모두 삽입과 삭제가 가능한 자료구조입니다. 우선 간단하게 덱의 구조를 파악했으니 Swift로 간단하게 코드를 작성해 볼까요?? public struct Deque { private var storage: [T] = [] public init() {} public init(_ elements: [T]){ storage = elements } public mutating func frontEnqueue(_ element: T) -> ..
-
[자료구조] Swift로 풀어보는 큐(Queue)Programing/자료구조(Data structure) 2020. 6. 16. 21:23
안녕하세요~! 5anniversary입니다. 이번 시간에는 저번 포스팅에 이어 자료구조에서 대표적인 유형중에 하나인 큐에 대해 천천히 알아보며, Swift로 구현해보는 시간을 가져보겠습니다. 우선 큐에 대한 기본적인 구조를 알아야 큐를구현할수있겠죠?? 큐는 스택과 달리 선입선출 / FIFO(First in - First Out)으로 데이터에 접근하고, Back(Rear)이라는 위치에서 Enqueue라는 메소드로 데이터를 입력, Front라는 위치에서 Dequeue라는 메소드로 데이터를 출력, 삭제하는 구조로 구현되는 자료구조입니다. 일반적으로 정의된 자료구조에 따라서 Swift로 코드를 작성해보자면!! public struct Queue { private var storage: [T] = [] // 비어..
-
[자료구조] Swift로 풀어보는 스택(Stack)Programing/자료구조(Data structure) 2020. 6. 16. 00:33
안녕하세요~! 5anniversary입니다. 이번 시간에는 자료구조에서 대표적인 유형 중에 하나인 스택에 대해 천천히 알아보며, Swift로 구현해보는 시간을 가져보겠습니다. 우선 스택에 대한 기본적인 구조를 알아야 스택을 구현할 수 있겠죠?? 스택은 후입 선출/LIFO(Last In - First Out)으로 데이터에 접근하는 자료구조입니다. 따라서 일반적으로 TOP이라 부르는 위치에서만 데이터를 입력, 출력, 삭제를 할 수 있는 구조로 구현되어있습니다. 따라서 이런 구조를 가진 Stack protocol을 먼저을 만들어볼게요~ public struct Stack { private var storage: [T] = [] public init() { } public init(_ elements: [T])..