| |
| META TOPICPARENT |
name="SyllabiSpring2025" |
CSC 322: Programing 3: Advanced Data Structures: 3 hours
Description
A continuation of Programming 2. Students will learn to design and use data structures including stacks, different types of queues, different types of trees, graphs, and other advanced data structures. Complex sorting routines and algorithm analysis will be covered. Pre-requisite: CSC 221.
Goals for CSC 322 are:
- Further develop programming skills
- Learn and use different data structures
- Enhance team development skills
Course outcomes for CSC 322 are:
Upon complete of CSC 322, students will:
- be able to appropriately use data structures found in a language’s API
- be able implement different data structures on their own
- be able to use complex and efficient sorting algorithms
- be able to do algorithm analysis
Program outcomes for CSC 322 are:
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions. (Computing student learning outcome 1)
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline. (Computing student learning outcome 2)
- Communicate effectively in a variety of professional contexts. (Computing student learning outcome 3)
- Recognize professional responsibilities and make informed judgments in computing practice based on legal, ethical, and moral principles. (Computing student learning outcome 4)
- Learn new areas of technology. (Computing student learning outcome 6)
- Apply computer science theory and software development fundamentals to produce computing-based solutions. (Computer Science student learning outcome 1)
- Support the delivery, use, and management of information systems within an information systems environment. (Computing and Information Systems student learning outcome 1)
- Apply security principles and practices to maintain operations in the presence of risks and threats. (Cyber Security student learning outcome 1)
Integration
- Self learning by learning on additional data structure and developing a program using it.
- Technical writing by submitting high caliber software development reports
- Team skills by working on teams with at least two programs
- Professional by doing assigned learning tasks in a timely manner
- By implementing secure programming in each program and reporting on it and also existing security weaknesses.
- Ethics by writing a report about the ethical components of associated with two programs developed
Additional course goals |
| |
-
- ATC: Advanced Topics in C—Core Concepts in Data Structures, 978-1-4302-6400-2, Noel Kalicharan
- CPDS: C Programming and Data Structures, 9789383828289, By K. Venkateshwara Rao
- DSCCP: Data Structures Through C++, 4th Edition, 978-9-35551-188-1, Yashavant Kanetkar
|
|
> > | |
| |
- Suggested linux labs (from ACM learning center). Many other resources do exist
- Getting Started with Linux Command Line Fundamentals [Getting Started]
- Vim Fundamentals in Linux [Guided]
|
| |
Assignments |
|
< < | |
> > | Lab extras
For each lab, include the following
- In lessons learned:
- Something about Linux you learned while doing that lab
- Something about C that you learned that was not expected. Something that would be expected might be the syntax of the for statement since that is the same as in Java
- In the security section
- One aspect of secure programming that your program addresses and how
- One aspect of secure programming that your program does not address and why. The reason could be complex or as simple as there was not enough time to address it.
Other |
| | There are two additional assignments involving reactions to current events. Announcements will not be made in class. You are responsible to track these yourself. Standard late policy will apply to these assignments. You are to react to current events/publications. A reaction to an article includes enough to convince me that you have read the entire article and not just the headline or first paragraph. It should include a summary of what was said and your reaction. Be sure to give a complete reference to the item. These should be turned in as a hard copy in class within one week of the item being published. You may pick when. Each one does have a deadline. The ones you pick must be unique to this course
- Write a reaction to one article in the ACM TechNews. It must be programming related. This needs to be completed by midterm.
- Write a reaction to one article in XRDS. It must be programming related. This needs to be completed before the final.
|