$24
SCENARIO:
Q1:
Draw with your handwritten to solution of following operations (Q1,Q2) and add your report:
Build an AVL tree from the words in the sentence "Nush ile uslanmayani etmeli tekdir,tekdir ile uslanmayanin hakki kotektir".
Insert the words one by one; edille, dakik ,ferc
After inserting delete the first three words from tree.
Q2:
Draw the ideal skip-list for storing the numbers 5, 10, 15, 20, 25, 30, 36, 42, 45,50, 55, 60, 68, 72, 86, 93.
Q3:
Do programming project in your book. 9.5
Complete the AVL Tree class by providing the missing methods for removal. Demonstrate that these methods work. Review the changes required for methods decrementBalance, incrementBalance, rebalanceleft, and rebalanceRight discussed at the end of Section 9 .2. Also, modify rebalanceleft (and rebalanceRight) to consider the cases where the left (right) subtree is balanced. This case can result when there is a removal from the right (left) subtree that causes the critical imbalance to occur. This is still a Left-Left (RightRight) case, but after the rotation the overall balances are not zero. This is illustrated in Figures 9.70 and 9.71 where an item is removed from subtree c.
In addition, the Left-Right (or Right-Left) case can have a case in which the Left-Right (Right-Left) subtree is balanced. In this case, after the double rotation is performed, all balances are zero. This is illustrated in Figures 9.72 through 9.74.
RESTRICTIONS:
Write a main class for each question
Don’t use any other third part library
GENERAL RULES:
For any question firstly use course news forum in moodle, and then the contact TA.
You can submit assignment one day late and will be evaluated over twenty percent (%20).
Register github student pack and create private project and upload your projects into github.
Your appeals are considered over your github project process.
TECHNICAL RULES:
Use given CSE222-VM to develop and test your homeworks (your code must be working on CSE222-VM), CSE222-VM download link will be given on Moodle.
Implement clean code standarts in your code;
Classes, methods and variables names must be meaningful and related with the
functionality.
Your functions and classes must be simple, general, reusable and focus on one topic. o Use standart java code name conventions.
REPORT RULES:
Add all javadoc documentations for classes, methods, variables …etc. All explanation must be meaningful and understandable.
You should submit your homework code, javadoc and report to Moodle in a studentid_hw#.tar.gz file.
Use the given homework format including selected parts:
Detailed system requirements
The Project usecase diagrams (extra points)
Class diagrams
Other diagrams
Problem solutions approach
x
Test cases
x
Running command and results
X
GRADING :
-
No error handling
: -50
-
No javadoc documentation
: -50
-
No report
: -90
-
Disobey restrictions
: -100
-
Cheating
: -200
Your solution is evaluated over 100 as your performance.
CONTACT :
Şeyma Yücer