• Packt logo
  • FutureLearn logo

Computer Science Essentials: Algorithms

Develop your knowledge of different algorithm examples and their applications in real-world, software development scenarios.

Code projected on a woman using a smart phone.

Improve your knowledge of programming, data, and algorithms in computer science

An in-depth understanding of algorithms will help you improve your problem-solving skills and develop an efficient approach to understanding complex issues within software development.

On this course, you’ll learn the essential functions and applications of algorithms within the context of data structures. You’ll also prepare for interviews, solving a variety of problems using your newly gained skills.

Explore the applications of search algorithms and sorting algorithms

Search algorithms help you efficiently retrieve data, whilst sorting algorithms give you the functionality to systematically organise your retrieved data.

On this course, you’ll explore a range of search and sort algorithms, allowing you to assess organisational needs and respond with the most efficient operations.

Learn to conduct complexity analysis on your algorithms and improve your data handling skills

By understanding time and space complexity, you can improve estimates and choose the most efficient algorithm to complete the tasks in your stack.

You’ll learn about tree and graph traversals, equipping you with the skills to tackle different problems, that vary in complexity, using a range of approaches.

Develop your problem solving skills and prepare for software development interviews

Having delved into the processes and functions of algorithms, you’ll then put your knowledge to the test with a selection of interview-level questions.

You’ll be guided through the answers, allowing you to check your working and learning how to demonstrate your understanding to employers.

By the end of this course, you’ll have reinforced your knowledge of data structures and algorithms, and gained experience of potential interview questions, preparing you to jumpstart your career in software development.

Skip to 0 minutes and 1 second SPEAKER: Is computer science a challenge? The answer to the problem is here. In only four weeks, you can learn the essentials of computer science algorithms. Shubham Sarda, software developer and digital marketer from Unwired Learning, shares his passion for the world of algorithms. Follow along and get the skills you’ve always wanted. This course will enable you to use recursion, define and apply the major sorting and searching algorithms, and practise some common interview coding problems. Learn at your pace and in your own space. Step into your future with Computer Science Essentials– Algorithms from Packt and FutureLearn.

Syllabus

  • Week 1

    Recursion, searching and sorting

    • Introduction to the course

      Welcome to Computer Science Essentials: Algorithms and the start of your learning journey, brought to you by Packt.

    • Recursion

      In this activity, we will discuss what recursion is and how to use it.

    • Searching algorithms

      In this activity, we will discuss the various searching algorithms and how they are used.

    • Bubble sort

      In this activity, we will discuss what bubbles sorting is and when it is applicable.

    • Selection sort

      In this activity, we will discuss the use of selection sorting.

    • Insertion sort

      In this activity, we will discuss when and how insertion sorting is used.

    • Wrap up

      You have reached the end of Week 1. In this activity, you'll reflect on what you have learned.

  • Week 2

    Sorting, trees, and graphs

    • Introduction to Week 2

      Welcome to Week 2. In this activity we'll highlight the main topics that will be covered this week.

    • Quick and merge sorting

      In this activity, we will discuss merge and quick sorting and how they used.

    • Tree traversal

      In this activity, we will discuss the use of tree traversal algorithms.

    • Graph traversal

      In this activity, we will discuss how graph traversal is used.

    • Wrap up

      You have reached the end of Week 2. In this activity, you'll reflect on what you have learned.

  • Week 3

    Implementation and questions to consider

    • Introduction to Week 3

      Welcome to Week 3. In this activity we'll highlight the main topics that will be covered this week.

    • Preparing for interview questions

      In this activity, we will discuss how to prepare for possible interview questions when you are job hunting.

    • Questions about two sum, and min and max stack

      In this activity, we will discuss common problems relating to two sum and stacks.

    • Linked list design

      In this activity, we will discuss frequently asked interview questions relating to linked lists.

    • Reverse linked lists

      In this activity, we will discuss how to answer interview questions about reverse linked lists.

    • Binary tree construction

      In this activity, we will discuss how to construct binary trees.

    • Wrap up

      You have reached the end of Week 3. In this activity, you'll reflect on what you have learned.

  • Week 4

    More interview questions

    • Introduction to Week 4

      Welcome to Week 4. In this activity we'll highlight the main topics that will be covered this week.

    • Questions about binary trees

      In this activity, we will discuss binary tree and string questions commonly asked in interviews.

    • Questions about capital and strings

      In this activity, we will discuss questions about strings and how to answer them.

    • Wrap up

      You have reached the end of this course. In this activity, you will reflect on what you have learned.

When would you like to start?

Start straight away and join a global classroom of learners. If the course hasn’t started yet you’ll see the future date listed below.

Learning on this course

On every step of the course you can meet other learners, share your ideas and join in with active discussions in the comments.

What will you achieve?

By the end of the course, you‘ll be able to...

  • Describe recursion and how it is used.
  • Compare the major sorting and searching algorithms.
  • Apply various sorting and searching algorithms.
  • Practice common interview coding problems.

Who is the course for?

This course is designed for those interested in a career in software development who want to deepen their understanding of data structures and algorithms, as well as improving their interview technique within data handling contexts.

Who developed the course?

Packt

Founded in 2004 in Birmingham, UK, Packt’s mission is to help the world put software to work in new ways, through the delivery of effective learning and information services to IT professionals.

FutureLearn

FutureLearn is owned by Global University Systems and has been providing online courses for learners around the world over the last ten years.

What's included?

This is a premium course. These courses are designed for professionals from specific industries looking to learn with a smaller group of like-minded individuals.

  • Unlimited access to this course
  • Includes any articles, videos, peer reviews and quizzes
  • Certificate of Achievement to prove your success when you're eligible
  • Download and print your Certificate of Achievement anytime

Still want to know more? Check out our FAQs

Learning on FutureLearn

Your learning, your rules

  • Courses are split into weeks, activities, and steps to help you keep track of your learning
  • Learn through a mix of bite-sized videos, long- and short-form articles, audio, and practical activities
  • Stay motivated by using the Progress page to keep track of your step completion and assessment scores

Join a global classroom

  • Experience the power of social learning, and get inspired by an international network of learners
  • Share ideas with your peers and course educators on every step of the course
  • Join the conversation by reading, @ing, liking, bookmarking, and replying to comments from others

Map your progress

  • As you work through the course, use notifications and the Progress page to guide your learning
  • Whenever you’re ready, mark each step as complete, you’re in control
  • Complete 90% of course steps and all of the assessments to earn your certificate

Want to know more about learning on FutureLearn? Using FutureLearn

Do you know someone who'd love this course? Tell them about it...