Dictionary(딕셔너리)란
Key , Value 가 함께 저장되는 자료구조입니다.
Key 값은 중복되면 안되고 value는 상관없습니다.
딕셔너리 생성방법
var dic : [String : Int] = [:] // 타입을 작성해야합니다
var dic1 : [String : Int] = ["testKeyOne" : 150 , "testKeyTwo" : 100]
var dic2 = [String : Int]()
var dic3 = Dictionary<String,Int>()
딕셔너리 값 접근
var dic : [String:Int] = ["age" : 10 , "height" : 100]
var height = dic["height"] // Optional(100)
var age = dic["age"] // Optional(10)
var nilValueCheck = dic["aaa"] // nil
값 접근시 기본값이 Optional Type 주의
if let _ = dic["age"] {
dic["age"]! += 100
}else{
dic["age"] = 10
}
딕셔너리 Key , Value값 접근
var dicKey = dic.keys //key값 배열 획득 배열과 동일하게 사용가능 ex) sorted
var dicValue = dic.values
for key in dicKey {
print(key)
}
for value in dicKey {
print(value)
}
왜 사용해야할까 or 나만의 고민
데이터 탐색하는 속도가 배열에 비하여 매우빠르다 (배열은 O(n) , 딕셔너리는 O(1))
특정 key ( 유일해야함 ) 값을 통하여 data를 저장하고 싶다면 딕셔너리 자료구조를 선택하는게 좋음
'CS > 자료구조' 카테고리의 다른 글
[자료구조] 그래프 란(Swift) (0) | 2024.03.07 |
---|---|
[자료구조] 트리란 (Swift) (2) | 2024.03.06 |
[자료구조] 배열, 연결리스트(Swift) (0) | 2023.08.17 |
[자료구조] 큐(Queue)란 (Swift) (0) | 2022.11.09 |
[자료구조] 스택(Stack)이란 (Swift) (0) | 2022.11.08 |