Algorithms

بواسطة: edX

Overview

Algorithms power the biggest web companies and the most promising startups. Interviews at tech companies start with questions that probe for good algorithm thinking.

In this computer science course, you will learn how to think about algorithms and create them using sorting techniques such as quick sort and merge sort, and searching algorithms, median finding, and order statistics.

The course progresses with Numerical, String, and Geometric algorithms like Polynomial Multiplication, Matrix Operations, GCD, Pattern Matching, Subsequences, Sweep, and Convex Hull. It concludes with graph algorithms like shortest path and spanning tree.

Topics covered:

  • Sorting and Searching
  • Numerical Algorithms
  • String Algorithms
  • Geometric Algorithms
  • Graph Algorithms

This course is part of the Fundamentals of Computer Science XSeries Program:

  • Programming Basics
  • Object-Oriented Programming
  • Foundations of Data Structures
  • Implementation of Data Structures

Taught by

Deepak B. Phatak, Ajit Diwan, Ganesh Ramakrishnan and Nagesh Karmali

Algorithms
الذهاب الي الدورة

Algorithms

بواسطة: edX

  • edX
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • أيام محددة
  • intermediate
  • English
8.1.2PHP Version337msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (213ms)
    • Application (124ms)
    • 1 x Booting (63.08%)
      212.61ms
      1 x Application (36.67%)
      123.60ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed4.57ms
      • select * from `courses` where `slug_ar` = 'algorithmseZ5' limit 1
        3.27ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. algorithmseZ5
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-02-13 00:49:42' where `id` = 616
        330μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-02-13 00:49:42
        • 1. 616
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (6)
        210μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        140μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (67) and `institutions`.`deleted_at` is null
        240μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (1) and `providers`.`deleted_at` is null
        160μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 610 limit 1
        220μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 610
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        BrD0zAjy5To3EuQeajzYm93R3idlqZkQKfRTj3Ug
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/algori...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/algorithmseZ5
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "priority" => array:1 [ 0 => "u=0, i" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "cf-connecting-ip" => array:1 [ 0 => "13.58.74.190" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "x-forwarded-for" => array:1 [ 0 => "13.58.74.190" ] "cf-ray" => array:1 [ 0 => "9110d1edbe169d52-ORD" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_PRIORITY" => "u=0, i" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_CF_CONNECTING_IP" => "13.58.74.190" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_X_FORWARDED_FOR" => "13.58.74.190" "HTTP_CF_RAY" => "9110d1edbe169d52-ORD" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "58256" "REMOTE_ADDR" => "172.69.17.67" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/algorithmseZ5" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1739407782.2909 "REQUEST_TIME" => 1739407782 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Thu, 13 Feb 2025 00:49:42 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Imo2a2VBSUltdFJaQW5BMFlnVHlJYWc9PSIsInZhbHVlIjoieTdGak5aenRvanpjNWsyZGNXWEtnaHRObGtTNnJUR080N0l1eGY2YlMyZFNHdUNkSWFHNGJ4c2JNN3B2ejl6OEpXNmkvOTRVcndhQWhuUU1KZlFlUThrbnNPU2lrMG9FWnNQL2NadFpkZjZPRzdhZjI5NC8vVjhyMFRiWklGK3oiLCJtYWMiOiI3N2JmOGNiZDY5M2UwNDY4ZGNiMTU1NTI5NGY5ZTY2NzRlZDJmNWQ5MTI2ZDc0NzlhNGUxYmJmNDRlYWM5ZmU3IiwidGFnIjoiIn0%3D; expires=Thu, 13 Feb 2025 02:49:42 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6Imo2a2VBSUltdFJaQW5BMFlnVHlJYWc9PSIsInZhbHVlIjoieTdGak5aenRvanpjNWsyZGNXWEtnaHRObGtTNnJUR080N0l1eGY2YlMyZFNHdUNkSWFHNGJ4c2JNN3B2ejl6OEpXNmkvO" 1 => "laravel_session=eyJpdiI6Ijh6dnJzaW5rL243a3JWNWVyTWNVblE9PSIsInZhbHVlIjoiWjdhQ3QrRlhXL3liNFNHVzkvb3BYK2s2TEtneDVFRnFrRW5tbDhxS0huNVI1UGY4dUtmKzNLSnljOEt4ZHFiMitPbmlpZzROZlY1SHRVLzF5TU1ITXBPenJqVW91NkhsdkQ5aFc2NVQ3cW1KRlhFTFJ3UE96ZCtKTVg3ZnZnUkoiLCJtYWMiOiI2NzE3OGQwYTc4MDAyYThkNTI3NDM5ZGRlMzA3MmM1ZGI4MjlmODlhMTRlMTk5MDEzNDQ3ZGY3NDQzYTMzOGY4IiwidGFnIjoiIn0%3D; expires=Thu, 13 Feb 2025 02:49:42 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6Ijh6dnJzaW5rL243a3JWNWVyTWNVblE9PSIsInZhbHVlIjoiWjdhQ3QrRlhXL3liNFNHVzkvb3BYK2s2TEtneDVFRnFrRW5tbDhxS0huNVI1UGY4dUtmKzNLSnljOEt4ZHFiMitP" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6Imo2a2VBSUltdFJaQW5BMFlnVHlJYWc9PSIsInZhbHVlIjoieTdGak5aenRvanpjNWsyZGNXWEtnaHRObGtTNnJUR080N0l1eGY2YlMyZFNHdUNkSWFHNGJ4c2JNN3B2ejl6OEpXNmkvOTRVcndhQWhuUU1KZlFlUThrbnNPU2lrMG9FWnNQL2NadFpkZjZPRzdhZjI5NC8vVjhyMFRiWklGK3oiLCJtYWMiOiI3N2JmOGNiZDY5M2UwNDY4ZGNiMTU1NTI5NGY5ZTY2NzRlZDJmNWQ5MTI2ZDc0NzlhNGUxYmJmNDRlYWM5ZmU3IiwidGFnIjoiIn0%3D; expires=Thu, 13-Feb-2025 02:49:42 GMT; path=/XSRF-TOKEN=eyJpdiI6Imo2a2VBSUltdFJaQW5BMFlnVHlJYWc9PSIsInZhbHVlIjoieTdGak5aenRvanpjNWsyZGNXWEtnaHRObGtTNnJUR080N0l1eGY2YlMyZFNHdUNkSWFHNGJ4c2JNN3B2ejl6OEpXNmkvO" 1 => "laravel_session=eyJpdiI6Ijh6dnJzaW5rL243a3JWNWVyTWNVblE9PSIsInZhbHVlIjoiWjdhQ3QrRlhXL3liNFNHVzkvb3BYK2s2TEtneDVFRnFrRW5tbDhxS0huNVI1UGY4dUtmKzNLSnljOEt4ZHFiMitPbmlpZzROZlY1SHRVLzF5TU1ITXBPenJqVW91NkhsdkQ5aFc2NVQ3cW1KRlhFTFJ3UE96ZCtKTVg3ZnZnUkoiLCJtYWMiOiI2NzE3OGQwYTc4MDAyYThkNTI3NDM5ZGRlMzA3MmM1ZGI4MjlmODlhMTRlMTk5MDEzNDQ3ZGY3NDQzYTMzOGY4IiwidGFnIjoiIn0%3D; expires=Thu, 13-Feb-2025 02:49:42 GMT; path=/; httponlylaravel_session=eyJpdiI6Ijh6dnJzaW5rL243a3JWNWVyTWNVblE9PSIsInZhbHVlIjoiWjdhQ3QrRlhXL3liNFNHVzkvb3BYK2s2TEtneDVFRnFrRW5tbDhxS0huNVI1UGY4dUtmKzNLSnljOEt4ZHFiMitP" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "BrD0zAjy5To3EuQeajzYm93R3idlqZkQKfRTj3Ug" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/algorithmseZ5" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]