티스토리 뷰
Input
// 문자인가?
extension String {
var isAlphabet: Bool {
return range(of: "[^a-zA-Z]", options: .regularExpression) == nil
}
}
// 공백으로 input arr 만들기
let input = readLine()!.components(seperatedBy: " ")
// 다양한 delimeter 사용
let expression = "100-200*300-500+20"
let arr = expression.components(separatedBy: CharacterSet(charactersIn: "*+-"))
Loop
// stride
for i in stride(from: 5, to: 0, by: -1) {
print(i) //5, 4, 3, 2
}
Dictionary (생성, 추가, 수정, 삭제, 접근)
// 생성
var dict = [String: Int]()
var dict = ["A": 2, "B": 1]
// 추가
dict["C"] = 2
// 수정
dict.updateValue(0, forKey: "A")
// 삭제
dict.removeValue(forKey: "A")
dict.removeAll()
// 접근 1
let allValues = dict.values
let allKeys = dict.keys
// 접근 2
for (key, value) in dict {
// action
}
Array
언제나 느끼지만 배열은 바로바로 검색해서 쓰는게 나을 때가 있다. 메소드들도 많을 뿐더러 가끔은 return 값이 optional인지 확인하고 싶을 때가 있기 때문. 그래도 조금의 수고를 덜 수만 있다면야!
// 생성
var arr = Array(repeating: 0, count: 3) // [0, 0, 0]
// sub array
let subArr = arr[i...j]
// String -> [String]
let str = "SUEATY"
let toArr = str.map { String($0) } // ["S", "U", "E", "A", "T", "Y"]
Math
import Foundation
// 반올림
round(num) // round는 Double
// 올림
ceil(num) // num은 Double
// 내림(버림)
floor(num) // num은 Double
Extension
'CS > 알고리즘' 카테고리의 다른 글
최단거리 알고리즘 ❷Floyd-Warshall Algorithm (0) | 2020.12.29 |
---|---|
최단거리 알고리즘 ❶ Dijkstra Algorithm (0) | 2020.12.29 |
[C++] 코딩 테스트 때 쓸 코드 (1) | 2020.07.03 |
[프로그래머스] 스킬트리 (배열) (0) | 2020.07.02 |
[프로그래머스] 멀쩡한 사각형 (일차함수 & 자료형) (0) | 2020.07.02 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 삼성
- 코테
- 졸업작품
- 부스트캠프2020
- RxSwift
- C++
- 커넥트재단
- OS
- 코딩테스트
- SWIFT
- nosql
- 인턴
- firebase
- 컴공졸작
- TableView
- 보안
- 부스트캠프
- 알고리즘
- swacademy
- 컴과졸작
- 소프트웨어역량시험
- 개발자인턴
- 부캠
- 운영체제
- 컴퓨터공학
- ios
- 프로그래머스
- 소프트웨어아카데미
- 데이터분석
- 삼성소프트웨어아카데미
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함