일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- APNS
- 야곰 # 야곰아카데미커리어스타터캠프 #iOS개발자 # 부트캠프
- modern concurrency deep dive
- 오블완
- SWIFT
- WWDC
- ios
- 티스토리챌린지
- modern concurrency
- Today
- Total
목록코딩테스트 (16)
Geon
Stack의 appned, pop 연산은 O(1)의 시간복잡도를 갖는다. Given a string s containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid. class Solution { func isValid(_ s: String) -> Bool { var stack: [String] = [] for input in s { if input == "(" { stack.append(")") } else if input == "[" { stack.append("]") } else if inpu..
시간복잡도(Big-O)에 데이터의 크기를 넣어서 나온 값이 100,000,000(10^8)이 넘으면 시간 제한 초과할 가능성이 있다. 정수가 저장된 배열 nums이 주어졌을 떄, nums의 원소중 두 숫자를 더해서 target이 될수 있으면 True 불가능하면 False를 반환하세요. 같은 원소를 두 번 사용할 수 없습니다. class Node { var value: String var prev: Node? var next: Node? init(value: String) { self.value = value } } class BrowserHistory { var head: Node var current: Node init(_ homepage: String) { let newNode: Node = .ini..
class Node { var value: Int var nextNode: Node? var prevNode: Node? init(value: Int = 0, next: Node? = nil, prev: Node? = nil) { self.value = value self.nextNode = next self.prevNode = prev } } class LinkedList { var size: Int = 0 var head: Node? var tail: Node? func insertBack(value: Int) { let newNode = Node(value: value) if head == nil { head = newNode tail = newNode } else { tail?.nextNode =..
정렬은 O(nlogn) 정수가 저장된 배열 nums이 주어졌을 떄, nums의 원소중 두 숫자를 더해서 target이 될수 있으면 True 불가능하면 False를 반환하세요. 같은 원소를 두 번 사용할 수 없습니다. func twoPointer() -> Bool { var nums: [Int] = [4,1,9,7,5,3,16] let target = 14 var l = 0 var r = nums.count - 1 //O(nlongn) nums.sort() //O(n) while l target { r -= 1 } else if nums[l] + nums[r] < target { l += 1 } else if nums[l] + nums[r] == targ..
시간복잡도(Big-O)에 데이터의 크기를 넣어서 나온 값이 100,000,000(10^8)이 넘으면 시간 제한 초과할 가능성이 있다. 정수가 저장된 배열 nums이 주어졌을 떄, nums의 원소중 두 숫자를 더해서 target이 될수 있으면 True 불가능하면 False를 반환하세요. 같은 원소를 두 번 사용할 수 없습니다. input: nums = {4,1,9,7,3,5,16}, target: 14 output: True 제약조건 2
func solution() -> Int{ let X = 5 let A = \[1,3,1,4,2,3,5,4\] var list = Array.init(repeating: 0, count: X + 1) var result = 0 for (index, item) in A.enumerated() { list\[0\] = 1 list\[item\] += 1 if list.allSatisfy({ $0 >= 1}) { result = index break } else { result = -1 } } return result } print(solution()) allSatisfy로 만족하는 결과값을 찾을수 있다.