🐣(75)
-
[Swift] (자료구조) 더블 링크드 리스트 / Doubly Linked List
Node import Foundation class Node { let id: Int let data: T var next: Node? = nil var prev: Node? = nil init(id: Int, data: T) { self.id = id self.data = data } } DoublyLinkdedList struct DoublyLinkedList { var head: Node? var tail: Node? var front: Node? { return head } var back: Node? { return tail } func showAll() { var now = head print("===== Linked List ======") while now != nil { now?.next..
2022.08.01 -
[Swift] (자료구조) 링크드 리스트 / Linked List
Node import Foundation class Node { let id: Int let data: T var next: Node? init(id: Int, data: T, next: Node? = nil) { self.id = id self.data = data self.next = next } } LinkedList struct LinkedList { var head: Node? var tail: Node? func showList() { var now = head print("===== Linked List ======") while now != nil { now?.next == nil ? print("id: \(now?.id) | data: \(now?.data)") : print("id: \..
2022.08.01 -
[Swift] (자료구조) 스택 / Stack
import Foundation struct Stack { var elements: [T] = [] var count : Int { return elements.count } var isEmpty : Bool { return elements.isEmpty } mutating func pop() -> T? { return elements.popLast() } mutating func push(_ element: T) { elements.append(element) } func top() -> T? { return elements.last } }
2022.08.01 -
[Swift] 진수 변환
radix 사용 변환 var n = "A" var hToD = Int(n, radix:16)! print(hToD) // MARK: - radix var decimal = 12345 let dToB = String(decimal, radix: 2) print(dToB) 반복문 사용 변환 // MARK: -interactive var interactiveNumberArray: Array = [] while (decimal != 0){ interactiveNumberArray.append(decimal % 2) decimal = decimal / 2 } print(interactiveNumberArray.reversed().map{String($0)}.reduce("", +)) 재귀 사용 변환 // MARK..
2022.06.14 -
[Swift] 에라토스테네스의 체를 사용한 소수 찾기 / 소수 찾기 / 소수 / Prime number / Prime
1. 해당 숫자까지 모든 숫자를 다 넣어 배열을 초기화 합니다. 2. 해당 숫자까지 배수가 있는 경우 0으로 삭제시켜줍니다. 3. 남아있는 숫자들이 소수 var num = 100000 // 원하는 숫자의 범위 var numArray = Array(repeating: 0, count: num + 1) for i in 2...num { numArray[i] = i } for i in 2...num { if numArray[i] == 0 { continue } for j in stride(from: i+i, through: num, by: i) { numArray[j] = 0; } } for i in 2...num { if numArray[i] != 0 { print(numArray[i], terminator..
2022.05.07