{"id":34398,"date":"2024-11-01T09:27:40","date_gmt":"2024-11-01T09:27:40","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=34398"},"modified":"2024-11-01T11:41:25","modified_gmt":"2024-11-01T11:41:25","slug":"javascript-coding-test-course-bubble-sort","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/34398\/","title":{"rendered":"JavaScript Coding Test Course, Bubble Sort"},"content":{"rendered":"<p><body><\/p>\n<p>Today, we will learn about one of the most basic sorting algorithms in JavaScript, <strong>Bubble Sort<\/strong>. Bubble sort is a simple but inefficient sorting algorithm, primarily used for educational purposes or to learn the fundamentals of algorithms.<\/p>\n<h2>Overview of Bubble Sort<\/h2>\n<p>Bubble sort works by repeatedly traversing a given list, comparing two adjacent elements and swapping their order. This process continues until it is determined that the list is sorted. In the worst case, the time complexity is <code>O(n^2)<\/code>.<\/p>\n<h3>How It Works<\/h3>\n<p>The basic operation of bubble sort is as follows:<\/p>\n<ol>\n<li>Start from the first element of the list and compare two adjacent elements.<\/li>\n<li>If the left element is greater than the right element, swap their positions.<\/li>\n<li>Repeat this process until the end of the list. After one pass, the largest element will move to the end.<\/li>\n<li>Repeat the above process (steps 1-3) for the remaining elements.<\/li>\n<\/ol>\n<h2>Problem Definition<\/h2>\n<h3>Problem Description<\/h3>\n<p>You are given an array <code>arr<\/code>. Write a function that uses the bubble sort algorithm to sort this array in ascending order and return the sorted array.<\/p>\n<h3>Example Input<\/h3>\n<pre><code>arr = [64, 34, 25, 12, 22, 11, 90]<\/code><\/pre>\n<h3>Example Output<\/h3>\n<pre><code>[11, 12, 22, 25, 34, 64, 90]<\/code><\/pre>\n<h2>Solution Process<\/h2>\n<h3>Step 1: Function Definition<\/h3>\n<p>First, we will define a function to perform bubble sort. We will name the function <code>bubbleSort<\/code>. It will take an array as input.<\/p>\n<h3>Step 2: Using Nested Loops<\/h3>\n<p>Bubble sort is implemented using nested loops. The outer loop progresses to the last element of the array, while the inner loop compares two adjacent elements to sort them.<\/p>\n<h3>Step 3: Implementing the Comparison and Swap Logic<\/h3>\n<p>In the inner loop, compare two adjacent elements and swap their order. We can use a simple conditional statement for this.<\/p>\n<pre><code>function bubbleSort(arr) {\n        let n = arr.length;\n        for (let i = 0; i &lt; n - 1; i++) {\n            for (let j = 0; j &lt; n - 1 - i; j++) {\n                if (arr[j] &gt; arr[j + 1]) {\n                    \/\/ Swap elements\n                    let temp = arr[j];\n                    arr[j] = arr[j + 1];\n                    arr[j + 1] = temp;\n                }\n            }\n        }\n        return arr;\n    }<\/code><\/pre>\n<h3>Step 4: Adding a Utility Function (Optional)<\/h3>\n<p>You may write a utility function to print the array to check the sorted result. You can use a simple <code>console.log<\/code> to verify the results.<\/p>\n<pre><code>const arr = [64, 34, 25, 12, 22, 11, 90];\n    console.log(bubbleSort(arr)); \/\/ [11, 12, 22, 25, 34, 64, 90]<\/code><\/pre>\n<h2>Time Complexity of Bubble Sort<\/h2>\n<p>The time complexity of bubble sort is <code>O(n^2)<\/code> in the worst case. This is because the entire array is iterated twice. In the best case (when it is already sorted), it is <code>O(n)<\/code>, but generally it is inefficient.<\/p>\n<p>The space complexity is <code>O(1)<\/code>, which makes it efficient since the additional memory used is constant.<\/p>\n<h2>Significance and Use of Bubble Sort<\/h2>\n<p>Due to its simple implementation, bubble sort is suitable for learning algorithms. However, its performance is relatively poor in real industrial applications, where other sorting algorithms are preferred. Nevertheless, it is an important fundamental concept that can be understood while studying algorithms.<\/p>\n<h2>Conclusion<\/h2>\n<p>In this article, we learned how to implement bubble sort in JavaScript. I hope this helps you understand basic sorting algorithms and serves as a stepping stone to learn more complex algorithms. If you have any questions or need additional information, please leave a comment!<\/p>\n<footer>\n<p>\u00a9 2023 Coding Test Course<\/p>\n<\/footer>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today, we will learn about one of the most basic sorting algorithms in JavaScript, Bubble Sort. Bubble sort is a simple but inefficient sorting algorithm, primarily used for educational purposes or to learn the fundamentals of algorithms. Overview of Bubble Sort Bubble sort works by repeatedly traversing a given list, comparing two adjacent elements and &hellip; <a href=\"https:\/\/atmokpo.com\/w\/34398\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;JavaScript Coding Test Course, Bubble Sort&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[141],"tags":[],"class_list":["post-34398","post","type-post","status-publish","format-standard","hentry","category-javascript-coding-test"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>JavaScript Coding Test Course, Bubble Sort - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/34398\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JavaScript Coding Test Course, Bubble Sort - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"Today, we will learn about one of the most basic sorting algorithms in JavaScript, Bubble Sort. Bubble sort is a simple but inefficient sorting algorithm, primarily used for educational purposes or to learn the fundamentals of algorithms. Overview of Bubble Sort Bubble sort works by repeatedly traversing a given list, comparing two adjacent elements and &hellip; \ub354 \ubcf4\uae30 &quot;JavaScript Coding Test Course, Bubble Sort&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/34398\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:27:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:41:25+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"3\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/34398\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34398\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"JavaScript Coding Test Course, Bubble Sort\",\"datePublished\":\"2024-11-01T09:27:40+00:00\",\"dateModified\":\"2024-11-01T11:41:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34398\/\"},\"wordCount\":457,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Javascript Coding Test\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/34398\/\",\"url\":\"https:\/\/atmokpo.com\/w\/34398\/\",\"name\":\"JavaScript Coding Test Course, Bubble Sort - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:27:40+00:00\",\"dateModified\":\"2024-11-01T11:41:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34398\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/34398\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/34398\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JavaScript Coding Test Course, Bubble Sort\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JavaScript Coding Test Course, Bubble Sort - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/atmokpo.com\/w\/34398\/","og_locale":"ko_KR","og_type":"article","og_title":"JavaScript Coding Test Course, Bubble Sort - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"Today, we will learn about one of the most basic sorting algorithms in JavaScript, Bubble Sort. Bubble sort is a simple but inefficient sorting algorithm, primarily used for educational purposes or to learn the fundamentals of algorithms. Overview of Bubble Sort Bubble sort works by repeatedly traversing a given list, comparing two adjacent elements and &hellip; \ub354 \ubcf4\uae30 \"JavaScript Coding Test Course, Bubble Sort\"","og_url":"https:\/\/atmokpo.com\/w\/34398\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:27:40+00:00","article_modified_time":"2024-11-01T11:41:25+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"3\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/34398\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/34398\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"JavaScript Coding Test Course, Bubble Sort","datePublished":"2024-11-01T09:27:40+00:00","dateModified":"2024-11-01T11:41:25+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/34398\/"},"wordCount":457,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Javascript Coding Test"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/34398\/","url":"https:\/\/atmokpo.com\/w\/34398\/","name":"JavaScript Coding Test Course, Bubble Sort - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:27:40+00:00","dateModified":"2024-11-01T11:41:25+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/34398\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/34398\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/34398\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"JavaScript Coding Test Course, Bubble Sort"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34398","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=34398"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34398\/revisions"}],"predecessor-version":[{"id":34399,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34398\/revisions\/34399"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=34398"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=34398"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=34398"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}