게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
C++ 자료구조 Tree 질문입니다
게시물ID : programmer_10864짧은주소 복사하기
작성자 : 훗날닭집사장
추천 : 0
조회수 : 468회
댓글수 : 5개
등록시간 : 2015/06/05 00:42:13
옵션
  • 본인삭제금지
static char prec[5][2] = { '^', 3, '*', 2, '/', 2, '+', 1, '-', 1 };
 
void tree::buildTree(char *str)
{
 char token;
 int a = 0;
 while (str[a])
 {
  token = str[a++];
  node *temp = new node(token);
  for (int b = 0; b < 5; b++)
   if (temp->data == prec[b][0])
   {
    temp->prior = prec[b][1];
    break;
   }
  if (temp->prior == 4)
   operand(temp);
  else
   operate(temp);
 }
}
 
 
 
1. 우선 인자 (char *str)은 어떠한 연산식이 입력이 됩니다. (ex. A/B*C+D ... )
 
2. 첫번째 if문에서 temp->data == prec[b][0] 이 조건이 어디서 발생이 되나요?? temp->data의 값은 어디에서도 연산 진행이 안되었을텐데..
 
3. 두번째 if문에서 temp->prior == 4 일 수가 없지 않나요? static 선언해준 char형 prec에서 최대 숫자는 3인데..
 
 
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호