Gain an understanding of fundamental algortihms and data structures.
Learn to write code that scales well with large data sets and how to identify hidden performance bottlenecks. While concepts covered in the course are addressed in C/C++, they can be applied to all programming languages and software development domains. Participants will learn the fundamentals necessary to answer algorithm and data structures questions commonly asked of job candidates in programming interviews.
Course Highlights:
- Performance Analysis of Algorithms
- Recursion
- Pointers
- Dynamic Memory Allocation
- Data Abstraction and Time-Space Trade Offs
- Mutual Improvements
Course Learning Outcomes:
- Write code that scales well in real-world situations by selecting appropriate data structures and algorithms
- Identify and resolve bottlenecks to correct performance issues in existing software
- Obtain foundational knowledge necessary to learn standard libraries across all programming languages
- Prepare students to respond appropriately to algorithm questions commonly asked in job interviews
- Acquire the ability to develop object-oriented solutions using the C programming language
- Apply advanced C programming techniques including generics with void pointers and callbacks using function pointers
Hardware: Must have access to a standard C/C++ compiler.
Course Typically Offered: Online in Spring and Fall quarters.
Prerequisite: CSE-40476 C/C++ Programming II: Dynamic Memory and File I/O Concepts or equivalent knowledge and experience.
Next Step: Upon completion of this course, consider taking courses in our C/C++ Programming or Embedded Computer Engineering certificate programs.
Contact: For more information about this course, please email infotech@ucsd.edu.
Course Number: CSE-40049
Credit: 3.00 unit(s)
Related Certificate Programs: C/C++ Programming
+ Expand All
-
3/28/2023 - 5/27/2023
$725
Online
-
-
-
CLASS TYPE:
Online Asynchronous.
This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.
Mitchell III, Raymond, Software Engineer, Fairway Technologies
Raymond Mitchell, III has 10+ years of experience architecting and implementing C++, Java, and C# applications. He graduated from UC San Diego with a B.S. in computer science. Ray's industry experience ranges from telephony and retail control systems to web applications. He is currently a Software Engineering with Fairway Technologies.
-
TEXTBOOKS:
No information available at this time.
-
POLICIES:
No refunds after: 4/3/2023.
-
3/28/2023 - 5/27/2023
extensioncanvas.ucsd.edu
You will have access to your course materials on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.
There are no sections of this course currently scheduled. Please contact the Science & Technology department at 858-534-3229 or unex-sciencetech@ucsd.edu for information about when this course will be offered again.