{"id":34438,"date":"2024-11-01T09:28:07","date_gmt":"2024-11-01T09:28:07","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=34438"},"modified":"2024-11-01T11:41:15","modified_gmt":"2024-11-01T11:41:15","slug":"javascript-coding-test-course-queue-management","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/34438\/","title":{"rendered":"JavaScript Coding Test Course, Queue Management"},"content":{"rendered":"<p><body><\/p>\n<h2>Problem Description<\/h2>\n<p>\n        There is height information for a group of students. You need to specify one student among them<br \/>\n        and arrange the line so that this student stands at the front.<br \/>\n        In this case, students shorter than the specified student must stand behind, and<br \/>\n        the order of students with the same height must remain unchanged.<br \/>\n        Write an algorithm that satisfies these conditions for lining up the students.\n    <\/p>\n<h3>Input Format<\/h3>\n<pre>\n    An array containing the heights of students (e.g., [160, 170, 165, 180, 175])\n    Height of the specified student (e.g., 170)\n    <\/pre>\n<h3>Output Format<\/h3>\n<pre>\n    An array of the lined-up students' heights (e.g., [170, 160, 165, 180, 175])\n    <\/pre>\n<h2>Problem Solving Process<\/h2>\n<h3>Step 1: Understand the Problem<\/h3>\n<p>\n        The crux of the problem is to place the specified height student at the front of the given array, while<br \/>\n        sorting the remaining students by height, maintaining their original order. This problem can primarily be solved using stable sorting.<br \/>\n        The algorithm we will implement includes the following steps.\n    <\/p>\n<h3>Step 2: Analyze a Simple Example<\/h3>\n<div class=\"example\">\n        For example, if the input is <code>[160, 170, 165, 180, 175]<\/code> and <code>170<\/code>,<br \/>\n        the lined-up result should be <code>[170, 160, 165, 180, 175]<\/code>. The key point to note is<br \/>\n        that when multiple students have the same height, their order must be preserved.\n    <\/div>\n<h3>Step 3: Develop a Solution Strategy<\/h3>\n<p>\n        The solution method is as follows.\n    <\/p>\n<ol>\n<li>\n            Find the student with the specified height in the given array and add that student as the first element of the result array.\n        <\/li>\n<li>\n            Add the remaining students to the result array while maintaining their original order, excluding students with the same height.\n        <\/li>\n<li>\n            Finally, return the modified array.\n        <\/li>\n<\/ol>\n<h3>Step 4: Implement JavaScript Code<\/h3>\n<p>\n        Based on the above strategy, I will write a JavaScript function. This function will take two parameters and<br \/>\n        serve to move the specified height student to the front.\n    <\/p>\n<div class=\"code\">\n<pre>\nfunction lineUpStudents(students, targetHeight) {\n    \/\/ Declare an array to store the result\n    let result = [];\n\n    \/\/ First, add the student corresponding to targetHeight\n    const targetStudents = students.filter(height =&gt; height === targetHeight);\n    result.push(...targetStudents);\n\n    \/\/ Add the remaining students (maintaining original order)\n    const otherStudents = students.filter(height =&gt; height !== targetHeight);\n    result.push(...otherStudents);\n\n    return result;\n}\n        <\/pre>\n<\/div>\n<h3>Step 5: Test and Validate the Code<\/h3>\n<p>\n        I will run a few test cases to confirm that the function works correctly.\n    <\/p>\n<div class=\"code\">\n<pre>\nconsole.log(lineUpStudents([160, 170, 165, 180, 175], 170)); \/\/ [170, 160, 165, 180, 175]\nconsole.log(lineUpStudents([160, 160, 165, 170, 180], 160)); \/\/ [160, 160, 165, 170, 180]\nconsole.log(lineUpStudents([180, 170, 160, 150], 160)); \/\/ [160, 180, 170, 150]\n        <\/pre>\n<\/div>\n<h3>Step 6: Complexity Analysis<\/h3>\n<p>\n        The time complexity of this algorithm is <strong>O(n)<\/strong>. This is because we iterate through the given array once.<br \/>\n        The space complexity is also <strong>O(n)<\/strong> since a separate result array is created.\n    <\/p>\n<h2>Conclusion<\/h2>\n<p>\n        In this tutorial, we learned how to solve the problem of lining up students based on their height information<br \/>\n        using JavaScript.<br \/>\n        Maintaining a stable sort by height was the key to this problem.<br \/>\n        Such problems are very important as they frequently appear in coding tests.<br \/>\n        Practicing various variations of this problem can also be good preparation for developing algorithmic thinking.\n    <\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Problem Description There is height information for a group of students. You need to specify one student among them and arrange the line so that this student stands at the front. In this case, students shorter than the specified student must stand behind, and the order of students with the same height must remain unchanged. &hellip; <a href=\"https:\/\/atmokpo.com\/w\/34438\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;JavaScript Coding Test Course, Queue Management&#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-34438","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, Queue Management - \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\/34438\/\" \/>\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, Queue Management - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"Problem Description There is height information for a group of students. You need to specify one student among them and arrange the line so that this student stands at the front. In this case, students shorter than the specified student must stand behind, and the order of students with the same height must remain unchanged. &hellip; \ub354 \ubcf4\uae30 &quot;JavaScript Coding Test Course, Queue Management&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/34438\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:28:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:41:15+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=\"2\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/34438\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34438\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"JavaScript Coding Test Course, Queue Management\",\"datePublished\":\"2024-11-01T09:28:07+00:00\",\"dateModified\":\"2024-11-01T11:41:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34438\/\"},\"wordCount\":375,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Javascript Coding Test\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/34438\/\",\"url\":\"https:\/\/atmokpo.com\/w\/34438\/\",\"name\":\"JavaScript Coding Test Course, Queue Management - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:28:07+00:00\",\"dateModified\":\"2024-11-01T11:41:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/34438\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/34438\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/34438\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JavaScript Coding Test Course, Queue Management\"}]},{\"@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, Queue Management - \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\/34438\/","og_locale":"ko_KR","og_type":"article","og_title":"JavaScript Coding Test Course, Queue Management - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"Problem Description There is height information for a group of students. You need to specify one student among them and arrange the line so that this student stands at the front. In this case, students shorter than the specified student must stand behind, and the order of students with the same height must remain unchanged. &hellip; \ub354 \ubcf4\uae30 \"JavaScript Coding Test Course, Queue Management\"","og_url":"https:\/\/atmokpo.com\/w\/34438\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:28:07+00:00","article_modified_time":"2024-11-01T11:41:15+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":"2\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/34438\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/34438\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"JavaScript Coding Test Course, Queue Management","datePublished":"2024-11-01T09:28:07+00:00","dateModified":"2024-11-01T11:41:15+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/34438\/"},"wordCount":375,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Javascript Coding Test"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/34438\/","url":"https:\/\/atmokpo.com\/w\/34438\/","name":"JavaScript Coding Test Course, Queue Management - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:28:07+00:00","dateModified":"2024-11-01T11:41:15+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/34438\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/34438\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/34438\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"JavaScript Coding Test Course, Queue Management"}]},{"@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\/34438","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=34438"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34438\/revisions"}],"predecessor-version":[{"id":34439,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/34438\/revisions\/34439"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=34438"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=34438"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=34438"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}