이론공부/자료구조4 트리(Tree) 출처 : https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVJ-_6qfsDFAWg SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 트리의 개념 비선형 구조 원소들 간에 1:n관계를 가지는 자료구조 원소들 간에 계층관계를 가지는 계층형 자료구조 상위 원소에서 하위 원소르 내려가면서 확장되는 나무(Tree)모양의 구조 정의 한개 이상의 노드로 이루어진 유한 집합이며 다음 조건을 만족한다. 노드 중 최상위 노드를 루트(root)라 한다 나머지 노드들은 n(>=0)개의 분리 집합 T1,.. 이론공부/자료구조 2020. 4. 19. 연결리스트 (Linked List) 출처 : https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVJ1r6qfkDFAWg SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 시작하기 전에 배열의 구조에 대해 이해를 해야 연결리스트를 왜 써야 하는지 알 수 가있다. 메모리 상에 연속된 위치에 고정된 크기를 할당을 받아 인덱스를 이용한 접근시 O(1)의 속도로 접근을 할 수 있다. 따라서 탐색이 많은 경우는 배열을 선택하는 것은 좋은 선택이라 할 수 있다. 그렇지만 삽입과 삭제가 자주일어나서 데이터 이동이 빈번하게 일어난다면.. 이론공부/자료구조 2020. 4. 18. 큐(Queue)란 무엇인가? 출처 : https://swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVIoJqqfYDFAWg SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com Queue는 선입선출(FIFO) 구조이다. 서비스 대기열(버퍼)같은 경우에 사용하게 된다. 선입선출 구조이기 때문에 앞쪽을 나타내는 Front와 뒤쪽을 나타내는 Rear가 있다. 버퍼 : 일시적으로 그 데이터를 보관하는 메모리 영역 Queue에서 필요한 주요 동작은 아래와 같다. enQueue() : 큐에 데이터를 넣는 과정, Rear가 커진다. Pu.. 이론공부/자료구조 2020. 4. 3. Stack 이란?(개념, 동작, 구현) 스택이란? 선형적 자료구조이며 데이터를 삽입시 뒤에 누적며 데이터를 꺼낼때는 뒤에서부터 꺼내는 자료구조입니다. 나중에 들어온 데이터가 먼저 나간다고 하여 Last Input First Out 이라하여 LIFO 구조라고 합니다. 뒤에서만 접근이 가능하므로 제한적으로 접근한다고 볼수있으며, 선형적 자료구조입니다. 위와 같이 데이터를 넣으면 위로 쌓이고 꺼낼때는 위부터 나가게 됩니다. C나 C++로 스택을 구현하기 위해서는 신경써야 할것이 많습니다. 그러나 파이썬은 list에 스택의 기능이 이미있어 파이썬에서는 구현하기가 쉽습니다. C++로 구현하는 것은 나중에 올리도록 하겠습니다. 아래는 파이썬으로 간단하게 구현한 스택입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 .. 이론공부/자료구조 2020. 2. 20. 이전 1 다음 💲 광고입니다.