Assignments
There will be several programming assignments to help the students in gaining
hands on experiences in problem solving with data structures.
Students should be ready for on-line demonstration when asked by the instructor.
Programming assignments will be posted in here during the semester.
- Assignment 0: Getting started with IDE and textbook examples (More details in lecture note)
- Assignment 1: C++ exercises (A1.pdf)
- Assignment 2: Arrays, stacks and queues (A2.pdf) Due date: Nov 23, 2023
- Assignment 3: Linked lists and trees (A3.pdf) Due date: Dec 14, 2023
- Assignment 4: Graphs (A4.pdf) Due date: Jan 9, 2024
All assignments should be submitted through NDHU e-Learning Course Web page. If you have any trouble uploading your assignments, please contact our TA 楊舜博(include7212@gmail.com ). Correctly done assignments will received full credits if submitted by the due date. Late submission will still be graded but only with partial credits. Therefore, submission by the deadline is strongly recommended.
All code in the textbook can be downloaded from https://inside.mines.edu/~dmehta/FDS_CPP/.
About using ChatGPT(or other AI tools) in Assignments
Can ChatGPT(or other AI tools) be used in assignments? The class policies for AI tools are as follows.
- Yes, of course!! With such a powerful tool, there is no reason to ban it in class.
- ChatGPT coding (uses ChatGPT to assist in writing code) is quite popular lately due to
- Faster coding
- Improved accuracy
- Better productivity
- No free lunch, though. You still need to:
- Provide the right prompts.
- Verify that the generated code to make sure that it is correct and effective enough.
- Improve the code to satisfy the requirements.
- With electronic calculator, you still need to learn arithmetic. With ChatGPT, you still need to learn data structures, algorithms and coding.
- You CANNOT use it in the exams. You need to demonstrate your actual performance, not tool-using skill.
Data Structure Code Collections
Programming Resources
C++ Books:
C++ Tutorial:
Tools, IDEs and Systems: