ECE 250 Algorithms and Data Structures
ECE 250 Algorithms and Data Structures
ECE 250 Algorithms and Data Structures
ece.uwaterloo.ca
[email protected]
Support WEEF
http://www.weef.uwaterloo.ca/
Introduction
3
Classroom Etiquette
Bilby
© FIFA
Introduction
10
C++
You will be using the C++ programming language in this course
C++
Please note: marks in ECE 250 are not strongly correlated with
marks in ECE 150
Introduction
12
C++
Unix
You can develop your code on Windows, but you are responsible for
testing your code to Unix
Introduction
14
Evaluation
The self study topics will appear on the final examination as bonus
questions
– A question for each will appear but you may only answer one
Introduction
15
Evaluation
You must pass both the examination component and the project
component separately in order to pass the course
– If you fail either component, your grade is the lesser of the two
– Handing in no projects will result in a grade of zero
Introduction
16
Evaluation
4 P 4 E
1 3
E 60 and P 60
Evaluation
Evaluation
Observations:
– This function is continuous (no threshold marking)
– You must achieve 60% in both the projects and the examinations in
order to have the usual marking scheme of 25% projects, 25% mid-term
examination, and 50% final examination
– You can achieve 100% on both the mid-term and the final examinations
and 50% on the projects, and you will have a grade of 50
Introduction
19
Evaluation
Evaluation
Projects
For each of the five projects, you will be required to implement one
or more of the data structures taught in class
We provide an environment in which we test your projects
Projects
We provide a interpreter which you can use to test your software
– We will use the same interpreter to test your software
Projects
Maximum Grade
You can articulate all errors and give fixes 70
You require assistance in correcting one member function 60
You require significant assistance on two member functions 50
Introduction
24
Projects
Projects
You are responsible for the naming convention on the submitted file
uwuserid_pM.tar.gz
where:
uwuserid is your uWaterloo User ID,
M is the number of the project
The execution must always be of the form
tar -cvf uwuserid_pM.tar file1.h file2.h etc.h
gzip uwuserid_pM.tar
Projects
Also, you must use the tar and gzip utilities on Unix
– Usingzip(evenifyourenameit)doesn’twork
If you cannot submit through uWaterloo LEARN, you must e-mail the
file to the Lab Instructor
– Any penalty is based on the time stamp at which the e-mail is received
(not sent)
– You are responsible for all information on the site
ece.uwaterloo.ca/~dwharder/aads/Projects/
Introduction
27
Projects
http://xkcd.com/844/
Introduction
28
Cat
Introduction
30
Ultimate
Introduction
31
Knife
Introduction
32
Asteroid
Introduction
33
Motion
Introduction
34
Shipwreck
Introduction
35
Peach
Introduction
36
Ford
Introduction
37
Pencil
Introduction
38
Metre
Introduction
39
Curtain
Introduction
40
Forever
Introduction
41
Also, neither the T.A.s nor myself will be available for help either on
the day of the mid-term or final examinations
– There is no help which can be derived in that time, and therefore, to
impress this upon you, you must study before-hand if you believe you
will need help
Introduction
45
Academic Offences
Plagiarism
Plagiarism
You are only asked for you uWaterloo User ID in both the project
files and the name of the submitted file
– It is not recommended that you include either your full name or your
uWaterloo Student ID Number
Introduction
48
Plagiarism
Plagiarism
When one student copies from another student, both students are
responsible
– Exceptions are made for outright theft
Plagiarism
Onestudentcannotaccept“fullresponsibility”
– For example, Alex, Bailey, Casey, and Devin worked together in a group
– They each did their own work, however, they shared code to comment
on each others programming
– Bailey gaveAlex’scodetoEmerson who copied it for his project and
submitted it
– Alex, Bailey and Emerson received a 0 and –5 %
Introduction
51
Plagiarism: Example 1
Plagiarism: Example 2
Leslie asked if Morgan could send her his code so that she could
look at it (promising, of course, not to copy it)
Morgan sent the code
Leslie copied it and handed it in
Introduction
53
Plagiarism: Example 3
Plagiarism: Example 4
Garry and Harry worked together on a single source file initially and
then worked separately to finish off the details
The result was still noticeably similar with finger-print-like
characteristics which left no doubt that some of the code had a
common source
Introduction
55
Plagiarism: Example 5
Plagiarism
The minimum penalty for plagiarism is 0 on the project and –5% on
your final mark for each case of plagiarism
– the penalty is applied regardless of what proportion the Projects are of
your final grade
A student who cheats must receive a grade lower than a student
who did not hand in a project
Introduction
57
Plagiarism
Plagiarism
Plagiarism
Distribution of Information
Information may be pass to the class through one of two media:
– An announcement in class,
– An e-mail via an e-mail through uWaterloo LEARN
Introduction
61
Summary
Usage Notes
• These slides are made publicly available on the web for anyone to
use
• If you choose to use them, or a part thereof, for a course at another
institution, I ask only three things:
– that you inform me that you are using the slides,
– that you acknowledge my work, and
– that you alert me of any mistakes which I made or changes which you
make, and allow me the option of incorporating such changes (with an
acknowledgment) in my set of slides
Sincerely,
Douglas Wilhelm Harder, MMath
[email protected]