Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
The Complete Data Structures & Algorithms Course in C & Java
Rating: 4.2 out of 5(40 ratings)
387 students

The Complete Data Structures & Algorithms Course in C & Java

Master the Coding Interview: Data Structures + Algorithms with fully animated videos and over 108 real life problems
Last updated 4/2022
English
English [Auto],

What you'll learn

  • Master coding interviews given by some of the top tech companies
  • Learn, implement, and use different Data Structures
  • Become a better developer by mastering tricky Data Structures and Algorithms
  • Learn, implement and use different Algorithms
  • Become more confident and prepared for your next coding interview
  • Professionally handle offers and negotiate raises

Course content

18 sections250 lectures31h 17m total length
  • Data Types4:49

    Explore primitive data types such as integer, float, and boolean, and compare them with user-defined types like objects and classes, noting memory and compiler differences across C, Java, and Python.

  • Algorithms10:32

    Define algorithms as step-by-step instructions that convert input to output. Examine examples from arithmetic, largest of three numbers, quadratic roots, and basic sorting, plus real world applications.

  • Data Structure2:16

    Explore what data structures are and how they store and organize data for efficient access. Choose a structure for your project using arrays, 2d arrays, and queues.

  • Types of Data Structures5:39

    Explore linear and nonlinear data structures, including arrays, linked lists, stacks, queues, trees, graphs, and matrices. See their real-world applications in image processing, web browsing, and maps with Dijkstra's algorithm.

  • Analysis of Algorithms2:38

    Analyze algorithms by comparing running time and space as functions of input size, using sorting methods such as insertion, selection, and quick sort to determine the most efficient approach.

  • Rate of Growth3:59

    Identify the rate of growth as the highest-degree term of a function, introduce big O notation, and compare running times from array access to binary search, linear search, and sorts.

  • Types of Algorithms Analysis5:11

    Analyze algorithms by comparing best case, worst case, and average case inputs to estimate fastest, slowest, and average running times, using lower and upper bounds.

Requirements

  • No experience with data structures or algorithms needed
  • Your notebook and your brain

Description

Want to land a job at a great tech company like Google, Microsoft, Facebook, Netflix, Amazon, or other companies but you are intimidated by the interview process and the coding questions? Do you find yourself feeling like you get "stuck" every time you get asked a coding question? This course is your answer. Using the strategies, lessons, and exercises in this course, you will learn how to land offers from all sorts of companies.

Many developers who are "self taught", feel that one of the main disadvantages they face compared to college educated graduates in computer science is the fact that they don't have knowledge about algorithms, data structures and the notorious Big-O Notation. Get on the same level as someone with computer science degree by learning the fundamental building blocks of computer science which will give you a big boost during interviews. You will also get access to our private online chat community with thousands of developers online to help you get through the course.

Here is what you will learn in this course:


1. Big O notation
2. Data structures:
* Arrays
* Hash Tables
* Singly Linked Lists
* Doubly Linked Lists
* Queues
* Stacks
* Trees (BST, AVL Trees, Binary Heaps)
* Tries
* Graphs

3. Algorithms:

* Recursion
* Sorting
* Searching
* Tree Traversal
* Breadth First Search
* Depth First Search
* Dynamic Programming


Unlike most instructors, I am not a marketer or a salesperson. I am a senior developer and programmer who has worked and managed teams of engineers and have been in these interviews both as an interviewee as well as the interviewer.

My job as an instructor will be successful if I am able to help you become better at interviewing and land more jobs. This one skill can really change the course of your career and I hope you sign up today to see what it can do for your career!


Taught by:

Abbass Masri is the instructor of the highest rated Android App Development course on Udemy as well as one of the fastest growing. His graduates have moved on to work for some of the biggest tech companies around the world like Apple, Google, JP Morgan, IBM, etc...

Also, he is running a successful app on playstore that teaches around 1,000,000 users coding in many languages like: Android, Java, C++, Python, Arduino, and more.. Please check it here on playstore: "Master Coding App"


Abbass promises you that there are no other courses out there as comprehensive and as well explained. He believes that in order to learn anything of value, you need to start with the foundation and develop the roots of the tree. Only from there will you be able to learn concepts and specific skills(leaves) that connect to the foundation. Learning becomes exponential when structured in this way.


Who this course is for:

  • Self-taught programmers
  • Computer science student
  • anyone preparing for coding interviews