Introduction to Algorithms and Linear Data Structures in Swift

بواسطة: Codecademy

Overview

Learn about the fundamental data structures of computer science and implement them in the Swift programming language.
Learn about the fundamental data structures of computer science and implement them in the Swift programming language through interactive articles, lessons, and quizzes.


Syllabus

  • Introduction to Algorithms and Data Structures: Get a general overview of algorithms and data structures in Swift and what's to come in this course!
    • Article: Introduction: Algorithms and Data Structures in Swift
  • Asymptotic Notation: Learn about asymptotic notation and how to use it to improve your code's efficiency.
    • Lesson: Asymptotic Notation: Conceptual
    • Quiz: Asymptotic Notation: Conceptual
    • Article: Asymptotic Notation: Swift
  • Recursion: Learn recursion, the technique of solving a problem with functions that call themselves!
    • Lesson: Recursion: Conceptual
    • Quiz: Recursion: Conceptual
    • Lesson: Recursion: Swift
    • Quiz: Recursion: Swift
  • Nodes: Learn about nodes, the building-block data structure.
    • Lesson: Nodes: Conceptual
    • Quiz: Nodes: Conceptual
    • Lesson: Nodes: Swift
    • Quiz: Nodes: Swift
  • Linked Lists: Learn about linked lists and how to build them in Swift.
    • Article: Linked Lists: Conceptual
    • Quiz: Linked Lists Quiz
    • Lesson: Linked Lists: Swift
    • Quiz: Linked Lists: Swift
  • Linked List Practice : Practice some common linked list techniques.
    • Article: Swapping Elements in a Linked List
    • Article: The Two-Pointer Technique in a Linked List
  • Queues: Learn about the queue data structure and how to implement it in Swift.
    • Article: Queues: Conceptual
    • Quiz: Queues: Conceptual
    • Lesson: Queues: Swift
    • Quiz: Queues: Swift
  • Stacks: Learn about stacks and how to implement them in Swift.
    • Article: Stacks: Conceptual
    • Quiz: Stacks Quiz
    • Lesson: Stacks: Swift
    • Quiz: Stacks: Swift
  • Hash Tables: Learn about hash tables and how to implement them in Swift.
    • Lesson: Hash Maps: Conceptual
    • Quiz: Hash Maps: Conceptual
    • Lesson: Hash Tables: Swift
    • Quiz: Hash Tables Quiz: Swift
Introduction to Algorithms and Linear Data Structures in Swift
الذهاب الي الدورة

Introduction to Algorithms and Linear Data Structures in Swift

بواسطة: Codecademy

  • Codecademy
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • intermediate
  • N/A
8.1.2PHP Version315msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (199ms)
    • Application (115ms)
    • 1 x Booting (63.36%)
      199.36ms
      1 x Application (36.39%)
      114.50ms
      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
      6 statements were executed7.58ms
      • select * from `courses` where `slug_ar` = 'introduction-to-algorithms-and-linear-data-structures-in-swift' limit 1
        6.11ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. introduction-to-algorithms-and-linear-data-structures-in-swift
        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-06-08 02:59:31' where `id` = 3296
        750μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-06-08 02:59:31
        • 1. 3296
        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)
        220μ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)
        170μ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 `providers` where `providers`.`id` in (53) and `providers`.`deleted_at` is null
        150μ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` = 3287 limit 1
        180μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 3287
        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\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        EIb15ZKlaSctkIo2sHQHuclruuB8hcc5p68bGkxs
        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/introd...
        _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/introduction-to-algorithms-and-linear-data-structures-in-swift
        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 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "216.73.216.241" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "216.73.216.241" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "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" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "94c52236ef272303-ORD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "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_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "216.73.216.241" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "216.73.216.241" "HTTP_SEC_FETCH_SITE" => "none" "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_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "94c52236ef272303-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "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" => "41264" "REMOTE_ADDR" => "172.71.255.61" "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/introduction-to-algorithms-and-linear-data-structures-in-swift" "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" => 1749351571.3164 "REQUEST_TIME" => 1749351571 ]
        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 => "Sun, 08 Jun 2025 02:59:31 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IkR4RTdiSFk4OGFudGtZRkkvbGV1Vnc9PSIsInZhbHVlIjoiZWRLSHYybGZyaHhNTWlxSlVxTWRaZ1JyM1hoMTBlSVpocVFLZitIL0RtNDBaeHJKYm5ONzIvbHBuMWpaNTMzekhtaUdFY1ZZUDg0TGdNZGFkYUl2OUViVGJNYm5xaDkvQllOZUJadjJ6ZDJjM3MxSmE5VXpiS25ZZUxGRE9TVmgiLCJtYWMiOiI0ZmRjMWVhYTBlYjI1MTU4MzEyYzEwMGM5Mzc2ZWEyZjg1MTZiMDAyYTZlYjkwMWJmNDBhMWJmOWJhNDFhOTI2IiwidGFnIjoiIn0%3D; expires=Sun, 08 Jun 2025 04:59:31 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IkR4RTdiSFk4OGFudGtZRkkvbGV1Vnc9PSIsInZhbHVlIjoiZWRLSHYybGZyaHhNTWlxSlVxTWRaZ1JyM1hoMTBlSVpocVFLZitIL0RtNDBaeHJKYm5ONzIvbHBuMWpaNTMzekhtaUdFY" 1 => "laravel_session=eyJpdiI6IllrcHF2bElCbE1tMnRLTy9sMTVka0E9PSIsInZhbHVlIjoiMWh0MHR5QWN3cHNDZzI4ekZkdEZERXlXMC9UL09oU3RrV3BzZTk1WVYvR3pBSkM1OHQzUXlNdkV4MEtjTjdYZVBDYmdzcWhvZ0Q3NWRTTGJiY3RyUDErNkt6dzFqVXlNYW1NMGhJeFB3cnoraVRHSCtMMVRWenpDRXk5cC9RS1EiLCJtYWMiOiIwYjFiZjAyNDg0ZjUwNzdlMzYwZjY3NGVmOTI5NGI1ZDNhZWUyYWJkNmQzMzU5MGZlODA3NTBiOTY5ZmI0Njg4IiwidGFnIjoiIn0%3D; expires=Sun, 08 Jun 2025 04:59:31 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IllrcHF2bElCbE1tMnRLTy9sMTVka0E9PSIsInZhbHVlIjoiMWh0MHR5QWN3cHNDZzI4ekZkdEZERXlXMC9UL09oU3RrV3BzZTk1WVYvR3pBSkM1OHQzUXlNdkV4MEtjTjdYZVBD" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IkR4RTdiSFk4OGFudGtZRkkvbGV1Vnc9PSIsInZhbHVlIjoiZWRLSHYybGZyaHhNTWlxSlVxTWRaZ1JyM1hoMTBlSVpocVFLZitIL0RtNDBaeHJKYm5ONzIvbHBuMWpaNTMzekhtaUdFY1ZZUDg0TGdNZGFkYUl2OUViVGJNYm5xaDkvQllOZUJadjJ6ZDJjM3MxSmE5VXpiS25ZZUxGRE9TVmgiLCJtYWMiOiI0ZmRjMWVhYTBlYjI1MTU4MzEyYzEwMGM5Mzc2ZWEyZjg1MTZiMDAyYTZlYjkwMWJmNDBhMWJmOWJhNDFhOTI2IiwidGFnIjoiIn0%3D; expires=Sun, 08-Jun-2025 04:59:31 GMT; path=/XSRF-TOKEN=eyJpdiI6IkR4RTdiSFk4OGFudGtZRkkvbGV1Vnc9PSIsInZhbHVlIjoiZWRLSHYybGZyaHhNTWlxSlVxTWRaZ1JyM1hoMTBlSVpocVFLZitIL0RtNDBaeHJKYm5ONzIvbHBuMWpaNTMzekhtaUdFY" 1 => "laravel_session=eyJpdiI6IllrcHF2bElCbE1tMnRLTy9sMTVka0E9PSIsInZhbHVlIjoiMWh0MHR5QWN3cHNDZzI4ekZkdEZERXlXMC9UL09oU3RrV3BzZTk1WVYvR3pBSkM1OHQzUXlNdkV4MEtjTjdYZVBDYmdzcWhvZ0Q3NWRTTGJiY3RyUDErNkt6dzFqVXlNYW1NMGhJeFB3cnoraVRHSCtMMVRWenpDRXk5cC9RS1EiLCJtYWMiOiIwYjFiZjAyNDg0ZjUwNzdlMzYwZjY3NGVmOTI5NGI1ZDNhZWUyYWJkNmQzMzU5MGZlODA3NTBiOTY5ZmI0Njg4IiwidGFnIjoiIn0%3D; expires=Sun, 08-Jun-2025 04:59:31 GMT; path=/; httponlylaravel_session=eyJpdiI6IllrcHF2bElCbE1tMnRLTy9sMTVka0E9PSIsInZhbHVlIjoiMWh0MHR5QWN3cHNDZzI4ekZkdEZERXlXMC9UL09oU3RrV3BzZTk1WVYvR3pBSkM1OHQzUXlNdkV4MEtjTjdYZVBD" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "EIb15ZKlaSctkIo2sHQHuclruuB8hcc5p68bGkxs" "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/introduction-to-algorithms-and-linear-data-structures-in-swift" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]