1. 데이터를 표현하는 방식들을 의미한다. (자료구조)
2. 그렇게 표현한 데이터(자료구조)를 알고리즘으로 처리한다.
3. 알고리즘은 자료구조에 의존적 입니다.
문제 : "Jeni"를 찾아서 출력해라. 또한 아래 자료 구조중 가장 처리시간이 빠른 자료구조를 사용해라
[1번 자료구조 - Array]
String[] member = {"choi","jun","oreo","cookie","jeni"}
[2번 자료구조 - HashMap<맴버번호,이름>]
HashMap<String,String> member = new HashMap<String, Object>(){
{
put("s1","choi");
put("s2","jun");
put("s3","oreo");
put("s4","cookie");
put("s5","jeni");
}
}
정답은 2번 자료구조이다.
[1번 자료구조] - jeni를 찾기 위해 반복문을 사용하여 n번 반복해야 찾을 수 있고
[2번 자료구조] - jeni의 맴버 번호만 있으면 1회만에 찾을 수 있다.
1. 선형 구조
- 자료 간의 앞 뒤 관계가 1:1 임
2. 비선형 구조
- 자료 간의 앞 뒤 관계가 1:N or N:M 입니다.
[자료구조] 트리 (Tree) (0) | 2020.11.05 |
---|---|
[자료구조] 덱 (Deque) (0) | 2020.11.05 |
[자료구조] 큐(Queue) (0) | 2020.11.05 |
[자료구조] 스택 (Stack) (0) | 2020.11.05 |
[자료구조] 연결 리스트 - (단일, 이중, 원형)(Linked List) (0) | 2020.11.01 |