언어별 컬렉션타입

T는 요소의 타입
K는 키 타입. V는 값 타입


정적배열

C
T 이름[길이]

C++
std::array<T,길이>

Java
없음

C#
없음

Rust
[T;길이]

Swift
없음

Python
없음

Javascript
없음

Go
[길이]T

Kotlin
없음



동적배열(길이 고정)

C
//가변길이배열(VLA). C11 구현 보장 안됨
T 이름[길이]

C++
없음

Java
T[]

C#
T[]

Rust
없음

Swift
없음

Python
없음

Javascript
없음

Go
없음

Kotlin
Array



동적배열(길이 유동)

C
없음

C++
std::vector

Java
Vector //스레드 세이프. 비권장
ArrayList //스레드 낫 세이프

C#
ArrayList //Object 고정. 비권장
List

Rust
Vec

Swift
Array
[T] //위의 설탕

Python
list
[] //위와 같음

Javascript
Array
[] //위와 같음

Go
없음

Kotlin
ArrayList



정렬되는 동적배열 맵

C
없음

C++
없음

Java
없음

C#
SortedList //Object 고정. 비권장
SortedList<K,V>

Rust
없음

Swift
없음

Python
없음

Javascript
없음

Go
없음

Kotlin
없음



연결리스트

C
없음

C++
std::list
std::forward_list //단방향 리스트

Java
LinkedList

C#
LinkedList

Rust
LinkedList

Swift
없음

Python
없음

Javascript
없음

Go
list
ring //원형 리스트

Kotlin
없음



트리 셋

C
없음

C++
std::set
std::multiset //값 중복가능

Java
TreeSet

C#
SortedSet

Rust
BTreeSet

Swift
없음

Python
없음

Javascript
없음

Go
없음

Kotlin
sortedSetOf() //함수. java SortedSet 연동



트리 맵

C
없음

C++
std::map<K,V>
std::multimap<K,V> //키 중복가능

Java
TreeMap<K,V>

C#
SortedDictionary<K,V>

Rust
BTreeMap<K,V>

Swift
없음

Python
없음

Javascript
없음

Go
없음

Kotlin
sortedMapOf() //java SortedMap



해시 셋

C
없음

C++
std::unordered_set
std::unordered_multiset //값 중복가능

Java
HashSet

C#
HashSet

Rust
HashSet

Swift
Set

Python
set

Javascript
Set

Go
없음

Kotlin
HashSet



해시 맵

C
없음

C++
std::unordered_map<K,V>
std::unordered_multimap<K,V> //키 중복가능

Java
Hadhtable<K,V> //스레드 세이프
HashMap<K,V> //not 세이프. V에 null 허용

C#
Hashtable //Object 고정. 비권장.
Dictionary<K,V>

Rust
HashMap<K,V>

Swift
Dictionary<K,V>

Python
dict
{} //위와 같음
ChainMap //dict 전용

Javascript
Object //Key로 문자열만 사용 가능
{} //위와 같음
Map //기능 확장

Go
map[K]V

Kotlin
HashMap<K,V>



스택

C
없음

C++
std::stack

Java
Stack

C#
Stack //Object 고정. 비권장
Stack

Rust
없음

Swift
없음

Python
없음

Javascript
없음

Go
없음

Kotlin
없음 //java 연동 가능



C
없음

C++
std::queue

Java
없음 (인터페이스만 존재)

C#
Queue //Object 고정. 비권장
Queue

Rust
없음

Swift
없음

Python
없음

Javascript
없음

Go
없음

Kotlin
없음



더블 엔디드 큐

C
없음

C++
std::deque

Java
ArrayDeque

C#
없음

Rust
VecDeque

Swift
없음

Python
deque

Javascript
없음

Go
없음

Kotlin
없음



C
없음

C++
함수로만 부분 지원(vector)

Java
없음

C#
없음

Rust
BinaryHeap

Swift
없음

Python
없음

Javascript
없음

Go
heap

Kotlin
없음