Uploaded by Andromeda Anthony Gabriel Hernandez

0-DSA-course-Introduction

advertisement
DATA STRUCTURES AND
ALGORITHMS using Java
Course Introduction
1/11
Objectives
•
•
•
•
•
•
•
Instructor introduction
Course description
Text book(s) & Reference Recourses
Learning Tools
Requirements of the course
Grading policy
Academic policy
2/11
Instructor introduction
Huỳnh Ngọc Dũng
Master of IT
Contacts:
• Email: dunghn14@fe.edu.vn
• Zalo Group:
https://zalo.me/g/nnytsd972
3/11
Questions
How are these data organized and processes ?
4/11
Course description
• This course introduce the fundamental concepts of
data structures and the algorithms that proceed from
them. Topics include the basics of algorithmic
analysis, fundamental data structures (including
stacks, queues, linked lists, hash tables, trees),
recursion, and some important applications of these
data stuctures and algorithms.
• Such data structures and algorithms as being
implemented in Java are also given in this course.
5/11
Text book(s) & Reference Recourses
Main books/resources:
1. Michaelt T. Goodrich, Roberto Tamassia, Michael
H. Goldwasser: Data Structures and Algorithms
in Java, 6th Edition, 2014 (ebook)
2. Important information at LMS
https://lms-hcmuni.fpt.edu.vn/course/view.php?id=692
3. Code files for students (java
files) https://github.com/dunghuynh-teaching
6/11
Learning Tools
–
–
–
–
JDK 1.8
JDK 1.8 Documentation
NetBeans 12
Eclipse (latest version)
7/11
Requirements of the course
• Following lessons in classrooms
• Reading textbooks at home
• Completing workshops in time
• Completing and submitting assignment in time
• Discussing actively in your teams and in
classrooms
• Presenting your presentations in classroom
8/11
Grading policy
• On-going assessment:
- 2 Assignments (AS):
20%
- 2 Progress tests (PT):
20%
• Practical and Final Exams:
- 1 Practical Exam (PE):
30%
- 1 Final Exam (FE):
30%
• Total score (TS) = 0.2*AS + 0.2*PT + 0.3*PE + 0.3*FE
• Completion Criteria:
1) Every on-going assessment (average) component > 0
2) PE > 0 (no resit)
3) FE >= 4 & TS >= 5
9/11
FPT-University Academic policy
Cheating, plagiarism and breach of copyright are serious
offenses under this Policy.
• Cheating
– Cheating during a test or exam is construed as talking,
peeking at another student’s paper or any other
clandestine method of transmitting information.
• Plagiarism
– Plagiarism is using the work of others without citing it; that
is, holding the work of others out as your own work.
• Breach of Copyright
– If you photocopy a textbook without the copyright holder's
permission, you violate copyright law.
10/11
Support
1. Zalo chat. Instant issues such as Google Meet problem,
assignment submission, announcements
2. LMS Discussion Group: All questions on the course, the
instructors follow case by case or answer in the class.
3. Ultraview: In the class if the students have technical
problems or peer review.
The instructor can not solve all your problems. The instructor
give you a direction and you need to work by yourself.
11/11
Exercises and Assignments submission guide
1. Pair working. Two students work in one repository.
2. Submit all source code to Github repository
3. All exercises and assignments are set in one project. New
exercises are new files or functions in the project, frequent
submission is VERY IMPORTANT.
4. Time and date on Github is the proof of submission time.
12/11
OOP notion conventions
•
•
Class name always start with uppercase character.
Variable names and function names always start with the
lowercase character.
•
If a name consists of many words, from second words start
all words by uppercase character.
examples for class names:
Rectangle, SecondDegreeEquation
examples for variable and function names:
sideOfRectangle, setDataToSafety
• Index and quantity variables should be i, j ,k or clear names
such as count, num, size, index1, index2
13/11
OOP notion conventions
• Follow standard names of functions such as setXXX(),
getXXX(), toString()
Verb (action) – noun
• Bracket
class Rectangle{
private int x;
public int getX(){
return X;
}
public int setX(int x){
this.x = x;
}
}
14/11
Download