Introduction to the study of data structures and their applications. Recursion, searching, sorting. Queues, stacks, heaps. Introduction to the analysis of algorithms, big “O” notation.
3 lecture hours, 2.5 lab hours
Credit: 0.50
Prerequisite: CP104
Exclusion: CP114
Section | Campus | Days | Times | Room | Instructor |
---|---|---|---|---|---|
A | Waterloo | MW | 08:30 AM - 09:50 AM | LH3094 | Mr. Haytham Qushtom |
IC1 | Int College, Brantford | - | |||
ICA | Int College, Brantford | - | |||
L1 | Waterloo | W | 11:30 AM - 12:50 PM | BA113 | Dr. Heider Ali |
OC1 | Online Learning | - | Dr. Zia Ud Din | ||
OCL | Online Learning | R | 02:00 PM - 03:20 PM | Zoom | Ms Xuyang Ma |
Sections B and C are delivered in person and you are expected to write the midterm and exam in person.
Section OC2 is delivered online. You are, however, expected to write the exam in person. A student living more than 100 km from Waterloo or Brantford may have arrange for an in-person proctored examination near their location. It is the responsibility of the student to coordinate remote proctored and pay any associated fees.
You are required to have a personal computer capable of running the Python programming language and the Eclipse / PyDev IDE (Integrated Development Environment). Windows, Mac, and Linux are all appropriate operating systems for this on desktop or laptop machines. Chromebooks are not appropriate.
Python is a programming language used extensively on the World Wide Web. Eclipse is an Integrated Development Environment (IDE) program. Together with the PyDev plug-in it eases the task of writing and executing programs written in Python. Python, Eclipse, and PyDev are all freely available from the Internet, and we provide instructions for downloading and installing them in the Resources section of this page.
You are responsible for storing all your assignment and lab work on your own memory sticks, Laurier network storage, the cloud, or other media. We strongly suggest that you keep at least two copies of your work at all times.
The Department of Physics & Computer Science requires for all first and second year courses that students must pass the final exam in order to pass the course.
The Department of Physics & Computer Science requires that students must write the final exam in person on the Waterloo campus, or, for online courses, at a proctored location in Canada.
If you pass the final exam, the following evaluation is applied:
Assessment | Weighting |
---|---|
Assignments | 25% |
Labs | 10% |
Midterm | 20% |
Final Exam | 45% |
No labs or assignments are dropped from the course evaluation.
For the online version of this course, all activities are conducted asynchronously. There are due dates for labs and assignment which you must meet, but you are not required to 'attend' any scheduled events other than the midterm and exam.
There are Discussion boards available in MLS for discussing various course topics. The discussion boards are moderated - the instructor must approve all postings before they are made public on a board. You may post anonymously. Do not post answers of any kind.
Note: this schedule is subject to change. All times are based upon Eastern Standard Time - i.e. Waterloo, ON time.
Week | Starting |
Labs Due: 23:59 Friday |
Assignments Due: 23:59 Sunday |
Other |
---|---|---|---|---|
1 | ||||
2 | 1: Data Classes Due: |
1: CP104 Background Due: |
||
3 | 2: Array-Based Stacks Due: |
2: Data Classes Due: |
||
4 | 3: Array-Based Queues Due: |
3: Array-Based Stacks Due: |
||
5 | 4: Array-Based Lists Due: |
4: Array-Based Queues Due: |
||
6 | 5: Simple Recursion Due: |
5: Array-Based Lists Due: |
||
7 | 6: Linked Lists Due: |
|||
8 | 7: Linked Recursion Due: |
6: Linked Queues Due: |
||
9 | 8: Binary Search Trees Due: |
7: Linked Lists Due: |
||
10 | 9: Hash Sets Due: |
8: Binary Search Trees Due: |
||
11 | 10: Sorting Due: |
9: Hashing and Hash Sets Due: |
||
12 | 10: Sorting Due: |
Laurier is committed to a culture of integrity within and beyond the classroom. This culture values honesty, integrity, reliability, fairness, caring, respect, accountability, responsibility and citizenship. Together, we have a shared responsibility to uphold this culture in our academic and nonacademic behaviour. It is expected that all students will follow assignment instructions and will adhere to Laurier’s regulations with respect to Academic Integrity. As a Laurier student, you are responsible for familiarizing yourself with this policy and the accompanying penalty guidelines, some of which may appear on your transcript if there is a finding of misconduct.
Ignorance of Laurier’s academic misconduct policy is not a defense
The relevant policy can be found at Laurier's Academic Integrity website along with resources to educate and support you in upholding a culture of integrity.
The following, but not limited to, are violations of Laurier’s Academic Code of Conduct:
We have recently experienced an increase in the volume of people gaining unauthorized access to digital resource by using another’s computer. It is your responsibility to keep your digital documents secure and maintain confidentiality. Do not leave your computer unattended, especially during group activities, and be diligent to log out of pages where you store digital files.
Assessments in this course are to be completed individually unless otherwise stated. Failure to follow the expectations for assessment completion may result in an allegation of academic misconduct.
The use of generative AI is not permitted in this course. Using generative AI to aid in or fully complete your coursework will be considered academic misconduct and Senate Policy 12.2 Student Code of Conduct: Academic Misconduct will be applied.
Late submissions are neither accepted nor graded.
Missed midterm grades are normally moved to the final exam.
Accommodations for religious observances: must be submitted within two weeks of the start of term using the Student Request for Accommodation for Religious Observances form. These grades will not be moved to the final exam.
Speak to your instructor ahead of assessments to identify what legitimate potential conflicts will be recognized and accommodated and what are unacceptable reasons for missing an assessment.
If the student is unable to provide a valid reason for not participating in the midterm test with supporting documentation (to be decided upon by course instructor, in line with University and Course Policies stated in the Course Syllabus), a grade of zero will be assigned to the midterm test. Students are advised to consult the Academic Calendars and Governance resources for expanded details of their rights and regulations.
Academic Calendars: Students are encouraged to review the Academic Calendar for information regarding all important dates, deadlines, and services available on campus.
Accessibility: Contact Accessible Learning if you require academic accommodations because of a disability. Review the Registration page for information about intake and documentation requirements. Deadlines: Students are responsible for meeting posted deadlines for registering with Accessible Learning and booking accommodated exams. Accessible Learning cannot guarantee accommodations for requests received after posted deadlines.
Library Accessibility Services: The Library offers accessibility services for people with disabilities, including alternate formats or remediation of Library collections and help accessing materials. For information please visit the Library Accessibility Hub (library.wlu.ca/services/accessibility-hub) or email libaccessibility@wlu.ca.
Plagiarism: The University has approved the following wording for inclusion on all course syllabi about the use of the institutionally supported plagiarism software tool:
"Wilfrid Laurier University uses software that can check for plagiarism. If requested to do so by course instructors, students are required to submit their written work in electronic form and have it checked for plagiarism.” (Approved by Senate May 14, 2002).
Academic Integrity: “Laurier is committed to a culture of integrity within and beyond the classroom. This culture values trustworthiness (e.g., honesty, integrity, reliability), fairness, caring, respect, responsibility and citizenship. Together, we have a shared responsibility to uphold this culture in our academic and nonacademic behaviour. The University has a defined policy with respect to academic misconduct. As a Laurier student you are responsible for familiarizing yourself with this policy and the accompanying penalty guidelines, some of which may appear on your transcript if there is a finding of misconduct. The relevant policy can be found at Laurier's academic integrity website along with resources to educate and support you in upholding a culture of integrity. Ignorance is not a defense.”
Final Examinations: “Students are strongly urged not to make any commitments (e.g., vacation) during the examination period. Students are required to be available for examinations during the examination periods of all terms in which they register. Refer to the Handbook on Undergraduate Course Management for more information.”
Religious and Spiritual Accommodation: The University welcomes students, staff and faculty from a wide range of backgrounds, beliefs and traditions and has a duty to provide accommodation based on creed (religion and spirituality) under the Ontario Human Rights Code. This obligation requires the University to work with students to provide reasonable accommodation when a student's religious observances or spiritual beliefs creates a conflict with their academic schedule. In order for instructors to provide proper accommodations, students have obligations to request accommodations in a timely manner. All policies, procedures, timelines, and request forms are found on Laurier’s Religious and Spiritual Accommodations and Supports webpage.
Gender Inclusivity: “This course will be conducted in an affirming and mutually respectful atmosphere for people of all gender expressions and identities. I was provided with a class roster with your name as it appears on the official enrollment information. If you use a name different from the roster, please let me know at your earliest convenience. You can also share your gender pronouns with me if you like. Members of the class are expected to refer to one another by the name and pronouns identified by each student. If you are comfortable, you can also let your classmates know about your name and pronouns. The Centre for Student Diversity, Equity and Inclusion (CSEDI) has developed a website outlining how to request a different name to appear on some university records and systems such as Zoom, MyLS and email. The website also provides information about Laurier’s Inclusive Washroom Initiative, support resources at Laurier, and more.”
Using Zoom for Instructional Purposes: Wilfrid Laurier University uses a range of technologies to facilitate in-person and remote instruction. Zoom is currently used for remote course delivery, including lectures, seminars, and group office hours, which may be recorded, stored and shared through MyLearningSpace for access by students in the course. For these course activities, students are permitted to turn off their cameras or use an alternative name to maintain their privacy after they have confirmed this with their course instructors. Student personal information is collected and used in the course in accordance with University policies and the Notice of Collection, Use or Disclosure of Personal Information. All exams and mid-terms in the course that are conducted online will be proctored using only technologies approved for assessment at Laurier as outlined on this page.”
Classroom Use of Electronic Devices: We expect, though do not require, you to work with a laptop or other personal computer for labs, assignments, midterm and exam. There are on-campus computer labs available for your use. Phones may not be used during midterms or exams for other than authentication.
Intellectual Property : The educational materials developed for this course, including, but not limited to, lecture notes and slides, handout materials, examinations and assignments, and any materials posted to MyLearningSpace, are the intellectual property of the course instructors. These materials have been developed for student use only and they are not intended for wider dissemination and/or communication outside of a given course. Posting or providing unauthorized audio, video, or textual material of course content to third-party websites violates instructors’ intellectual property rights, and the Canadian Copyright Act. Recording lectures in any way is prohibited in this course unless specific permission has been granted by instructors. Failure to follow these instructions may be in contravention of the university’s Student Non-Academic Code of Conduct and/or Code of Academic Conduct, and will result in appropriate penalties. Participation in this course constitutes an agreement by all parties to abide by the relevant University Policies, and to respect the intellectual property of others during and after their association with Wilfrid Laurier University.
Kitchener/Waterloo Resources:
Brantford Resources:
Milton Resources:
The educational materials developed for this course, including, but not limited to, lecture notes and slides, handout materials, examinations and assignments, and any materials posted to MyLearningSpace, are the intellectual property of the course instructor. These materials have been developed for student use only and they are not intended for wider dissemination and/or communication outside of a given course. Posting or providing unauthorized audio, video, or textual material of lecture content to third-party websites violates an instructor's intellectual property rights, and the Canadian Copyright Act. Recording lectures in any way is prohibited in this course unless specific permission has been granted by the instructor. Failure to follow these instructions may be in contravention of the university's Code of Student Conduct and/or Code of Academic Conduct, and will result in appropriate penalties. Participation in this course constitutes an agreement by all parties to abide by the relevant University Policies, and to respect the intellectual property of others during and after their association with Wilfrid Laurier University.