Binary Tree ADT implementation
- Tình trạng: Closed
- Giải thưởng: $15
- Các bài thi đã nhận: 1
Tóm tắt cuộc thi
Build an implementation of a binary-tree ADT and Use it to evaluate an arithmetic expression which (for the sake of simplicity) includes only binary operations. JAVA is to be used as a programming language.
1. The purpose of the exercise is to practice building and traversing an expression tree; so I want you to build a tree to hold the expression and to evaluate the expression by traversing the tree. If you have another idea about how to evaluate the expression without building the expression tree, I encourage you to reconsider.
2. Please use the following syntax for the arithmetic expressions that I want you to process:
<expression> ::= <term> | <term> + <expression> | <term> - <expression>
<term> ::= <factor> | <factor> * <term> | <factor> / <term>
<factor> ::= <constant> | ( <expression> )
<constant> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
You can make it slightly more complex by allowing greater integers than 9 but you can let your constants range from 0 to 9 only.
3. Make sure you understand how this syntax defines operator precedence and associativity rule. Operator precedence: 3*5+4 is interpreted as (3*5)+4 rather than 3*(5+4). associativity rule: 3-5-4 is interpreted as 3-(5-4) rather than (3-5)-4.
4. Supply a two pager technical description of the program you wrote (this can be kept for later, if you win the contest)
5. Please write the code well commented
Các kĩ năng yêu cầu
Những bài dự thi tốt nhất dự cuộc thi này