C 자료구조
-
Binary Search Tree 활용 - Tree level 순회C 자료구조/6. Binary Search Tree Basic 2020. 6. 28. 14:08
인용 아래에서 작업한 이진 탐색 트리의 탐색,삽입,삭제의 기능의 내용을 그대로 가지고 와서 활용하도록 하자. designatedroom87.tistory.com/15?category=869957 2. Binary Search Tree 만들기 - 삭제 아래 글을 이어서 진행해보자. designatedroom87.tistory.com/14?category=869957 1. Binary Search Tree 만들기 - 삽입과 탐색 시작 하기 전에, Tree에서 구현한 BinaryTree 헤더 파일과 소스파일이 필요하다. 그.. designatedroom87.tistory.com Traversal 헤더 파일과 소스파일을 만들어서 트리의 레벨 순회 함수를 만들 것이다. 그리고 큐의 헤더 파일과 소스파일을 가지고 ..
-
Queue 만들기C 자료구조/4. 큐( Queue ) 2020. 6. 28. 13:18
1. 개념 Queue는 먼저 들어온 데이터가 먼저 나가는 구조로 되어있다. 이러한 특성을 선입 선출 ( FIFO : First-In First-Out ) 이라고 한다. 큐는 뒤에서 새로운 데이터가 추가되고, 앞에서 데이터가 하나씩 삭제되는 구조를 가지고 있다. 구조상으로 큐가 스택과 다른 점은 스택의 경우, 삽입과 삭제가 같은 쪽에서 일어나지만 큐에서는 삽입과 삭제가 다른 쪽에서 일어난다는 것이다. 큐에서 삽입이 일어나는 곳을 Rear 라고 하고 삭제가 일어나는 곳을 Front라고 한다. 그림으로 보자. 2. 구현 메인 함수 3. 실행결과 헤더 파일 및 소스 파일
-
-
최대 힙 - BasicC 자료구조/Heap 2020. 6. 28. 00:59
들어가기에 앞서, 책 와 인용 1. 힙의 개념 힙은 여러 개의 값들 중에서 가장 큰 값이나 가장 작은 값을 빠르게 찾아내도록 만들어진 자료구조이다. 히프 트리에서는 중복된 값을 허용한다. (이진 탐색 트리에서는 중복된 값을 허용하지 않았다.) 힙의 목적은 삭제 연산이 수행될 때마다 가장 큰 값 혹은 가장 작은값을 찾아내기만 하면 되는 것이다. 힙은 2가지가 있다. 부모 노드의 키값이 자식노드의 키값 보다 큰 최대 힙 반대로 부모 노드의 키값이 자식 노드의 키값 보다 작은 최소 힙이 있다. (위의 2가지 힙은 단지 부등호만 달라지고 나머지는 완전히 동일하다.) 힙은 완전 이진 트리이다. 여기서는 구현의 방식은 최대 힙으로 할 것이다. 값이 곧, 우선 순위이다. 값이 클수록 우선 순위는 높다. [아래의 그림..
-
스택의 활용 - 스택 계산기 (괄호 포함)C 자료구조/3. 스택( Stack ) 2020. 6. 24. 11:25
아래의 글에서 괄호를 포함한 중위 표기법을 후위 표기법으로 변경해 봤다. designatedroom87.tistory.com/25?category=868809 스택의 활용 - 중위 표기법에서 후위 표기법으로 변환(괄호 포함) 괄호를 포함한 중위 표기법을 후위 표기법으로 변경하는 알고리즘 괄호가 있는 중위 표기법을 후위 표기법으로 변경하는 함수 메인 함수 프로그램 실행 결과 아래는 소스 파일 designatedroom87.tistory.com 그러면, 후위 표기법을 계산하면 되는데, 이는 앞의 스택 계산기의 내용과 같다. 이미 후위 표기법으로 만들었기 때문에, 후위 표기법의 계산은 앞의 내용과 동일하다. 그리고, 스택에 저장할 데이터는 float 형이다. 내용은 같지만, 그래도 함수를 다시 보도록 하자. ..
-
스택의 활용 - 스택 계산기 (괄호 제외)C 자료구조/3. 스택( Stack ) 2020. 6. 24. 10:18
아래에서 중위 표기법을 후위 표기법으로 변경하는 방법을 알아봤다. designatedroom87.tistory.com/23?category=868809 스택의 활용 - 중위 표기법에서 후위 표기법으로 변환(괄호 제외) 중위 표기법에서 후위 표기식으로 바꾸는 알고리즘. 1. 중위 표기법 배열을 왼쪽에서 오른쪽으로 탐색. 2. 만약 피 연산자(숫자)를 만나게 되면, 바로 후위 표기 배열에 저장. 3. 연산자를 만나게 designatedroom87.tistory.com 이번에는 이 후위 표기법으로 가지고 계산기를 만들어 보자. 스택에 저장할 테이터의 타입은 float이다. 계산 알고리즘 후위표기법 배열을 왼쪽에서 오른쪽으로 탐색하면서 피 연산자(숫자)이면 스택에 저장. 연산자이면 숫자를 스택에서 꺼내 연산을 ..
-
스택의 활용 - 중위 표기법에서 후위 표기법으로 변환(괄호 제외)C 자료구조/3. 스택( Stack ) 2020. 6. 24. 09:44
중위 표기법에서 후위 표기식으로 바꾸는 알고리즘. 1. 중위 표기법 배열을 왼쪽에서 오른쪽으로 탐색. 2. 만약 피 연산자(숫자)를 만나게 되면, 바로 후위 표기 배열에 저장. 3. 연산자를 만나게 되면, 연산자 우선 순위를 판단하여야 함. 3 - (1). 스택에 존재하는 연산자가 현재 처리중인 연산자보다 우선 순위가 높으면, 일단 스택에 있는 연산자들을 먼저 후위배열에 저장하고 나서 나중에, 현재 처리중인 연산자를 스택에 넣어야 한다. 3 - (2). 만약 우선 순위가 같다면, 일단 스택 상단의 요소를 꺼내 후위배열에 저장하고 나서 현재 처리중인 연산자를 스택에 저장 중위 표기법은 후위 표기법으로 변경하는 함수 메인 함수 프로그램 실행 결과 아래는 소스 파일 아래는 스택 라이브러리를 이용한 중위 표기..