• 파일시티 이벤트
  • LF몰 이벤트
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

[자료구조] BinaryTree 구성 및 수식계산

*래*
개인인증판매자스토어
최초 등록일
2009.04.08
최종 저작일
2008.08
파일확장자 압축파일
가격 1,000원 할인쿠폰받기
다운로드
장바구니

*해당 문서는 미리보기가 지원되지 않습니다.

소개글

인하대학교 자료구조 네번째 과제물입니다.
각각의 문제에 대한 소스코드(주석포함) 및 실행파일이 압축되어있습니다.

입력받은 수식에 대하여 수식계산, 트리 높이계산, postorder, inorder, preorder 순회출력 등의 인터페이스를 제공합니다.
자세한 문제내용은 아래와 같습니다.

Homework 4

다음과 같은 인터페이스를 갖는다.
Enter your selection (1: New Expression, 2: Evaluate, 3: Height, 4: Size, 5: Preorder, 6: Inorder, 7:Postorder, 8: Quit): 1
Enter a new expression: (((8/2)*(6-3))+4) 
이때 주어지는 수식은 빈칸이 없고 한자리 숫자로 이루어진다. 프로그램은 다음과 같은 이진트리를 내부적으로 구성한다.

Enter your selection (1: New Expression, 2: Evaluate, 3: Height, 4: Size, 5: Preorder, 6: Inorder, 7:Postorder, 8: Quit): 2
Value of Expression = 16
Enter your selection (1: New Expression, 2: Evaluate, 3: Height, 4: Size, 5: Preorder, 6: Inorder, 7:Postorder, 8: Quit): 3
Height of the tree = 3
Enter your selection (1: New Expression, 2: Evaluate, 3: Height, 4: Size, 5: Preorder, 6: Inorder, 7:Postorder, 8: Quit): 4
Number of nodes = 9
Enter your selection (1: New Expression, 2: Evaluate, 3: Height, 4: Size, 5: Preorder, 6: Inorder, 7:Postorder, 8: Quit): 5
+*/82-634
Enter your selection (1: New Expression, 2: Evaluate, 3: Height, 4: Size, 5: Preorder, 6: Inorder, 7:Postorder, 8: Quit): 6
8/2*6-3+4
Enter your selection (1: New Expression, 2: Evaluate, 3: Height, 4: Size, 5: Preorder, 6: Inorder, 7:Postorder, 8: Quit): 7
82/63-*4+
Enter your selection (1: New Expression, 2: Evaluate, 3: Height, 4: Size, 5: Preorder, 6: Inorder, 7:Postorder, 8: Quit): 8
Bye!!

ex) 8
(4+3)
((5-2)*(3+4))
(4+(2+(3*1)))

컴파일 실행환경

Visual Studio 2008

본문내용

// Expression.cpp

#include <iostream>

#include "BinaryTree.h"
#include "CharIter.h"

#define SIZE 256 // 버퍼 사이즈 정의

using namespace std;

void flushBuffer(char* buffer, int size); // 새로운 식을 입력받기 위해 버퍼를 비움
void parseChar(CharIter* buffer, BinaryTree<char>::Node* np);
// 버퍼에 저장된 입력받은 식을 분리하여 이진트리에 저장

void showPreorder(BinaryTree<char>::Node* node); // Preorder 출력
void showInorder(BinaryTree<char>::Node* node); // Inorder 출력
void showPostorder(BinaryTree<char>::Node* node); // Postorder 출력

int evaluateExpression(BinaryTree<char>::Node* node); // 트리에 저장된 정보를 이용하여 입력식의 결과값 계산
int calculate(int num1, int num2, char opr); // 사칙연산 함수

BinaryTree<char> tree; // 전역변수 tree 선언

압축파일 내 파일목록

BinaryTree.h
CharIter.h
Expression.cpp
Homework4.exe

참고 자료

(Data Structures and Algorithms in C++, Goodrich, Tamassia, Mount - WILEY)

자료후기(1)

*래*
판매자 유형Bronze개인인증

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우
최근 본 자료더보기
탑툰 이벤트
[자료구조] BinaryTree 구성 및 수식계산
  • 레이어 팝업
AI 챗봇
2024년 05월 28일 화요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
6:54 오전
New

24시간 응대가능한
AI 챗봇이 런칭되었습니다. 닫기