{"id":19591,"date":"2024-03-15T19:07:45","date_gmt":"2024-03-15T19:07:45","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/"},"modified":"2024-03-21T16:04:06","modified_gmt":"2024-03-21T16:04:06","slug":"how-to-sort-a-c-queue-in-ascending-order","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/","title":{"rendered":"How to sort a C++ queue in ascending order?"},"content":{"rendered":"<p>To use a C++ queue to implement sorting from smallest to largest, you can follow these steps:<\/p>\n<ol>\n<li>First, insert the original data into the queue in sequence.<\/li>\n<li>Next, create a secondary queue and insert the first element from the original queue into the secondary queue.<\/li>\n<li>Next, the second element is removed from the original queue and compared sequentially with the elements in the auxiliary queue. If the element in the original queue is smaller than the element in the auxiliary queue, it is inserted into the appropriate position in the auxiliary queue. If the element in the original queue is larger than the element in the auxiliary queue, the elements in the auxiliary queue are inserted into the original queue one by one, and the element in the original queue is inserted into the appropriate position in the auxiliary queue.<\/li>\n<li>Repeat step 3 until the original queue is empty.<\/li>\n<li>Ultimately, the elements in the auxiliary queue are the result of being sorted from smallest to largest.<\/li>\n<\/ol>\n<p>Here is a sample code snippet:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;iostream&gt;<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;queue&gt;<\/span><\/span>\r\n\r\n<span class=\"hljs-keyword\">using<\/span> <span class=\"hljs-keyword\">namespace<\/span> std;\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-type\">void<\/span> <span class=\"hljs-title\">sortQueue<\/span><span class=\"hljs-params\">(queue&lt;<span class=\"hljs-type\">int<\/span>&gt;&amp; q)<\/span> <\/span>{\r\n    queue&lt;<span class=\"hljs-type\">int<\/span>&gt; temp;\r\n    <span class=\"hljs-keyword\">while<\/span> (!q.<span class=\"hljs-built_in\">empty<\/span>()) {\r\n        <span class=\"hljs-type\">int<\/span> current = q.<span class=\"hljs-built_in\">front<\/span>();\r\n        q.<span class=\"hljs-built_in\">pop<\/span>();\r\n        <span class=\"hljs-keyword\">while<\/span> (!temp.<span class=\"hljs-built_in\">empty<\/span>() &amp;&amp; temp.<span class=\"hljs-built_in\">back<\/span>() &gt; current) {\r\n            q.<span class=\"hljs-built_in\">push<\/span>(temp.<span class=\"hljs-built_in\">back<\/span>());\r\n            temp.<span class=\"hljs-built_in\">pop<\/span>();\r\n        }\r\n        temp.<span class=\"hljs-built_in\">push<\/span>(current);\r\n    }\r\n    q = temp;\r\n}\r\n\r\n<span class=\"hljs-function\"><span class=\"hljs-type\">int<\/span> <span class=\"hljs-title\">main<\/span><span class=\"hljs-params\">()<\/span> <\/span>{\r\n    queue&lt;<span class=\"hljs-type\">int<\/span>&gt; q;\r\n    q.<span class=\"hljs-built_in\">push<\/span>(<span class=\"hljs-number\">5<\/span>);\r\n    q.<span class=\"hljs-built_in\">push<\/span>(<span class=\"hljs-number\">2<\/span>);\r\n    q.<span class=\"hljs-built_in\">push<\/span>(<span class=\"hljs-number\">8<\/span>);\r\n    q.<span class=\"hljs-built_in\">push<\/span>(<span class=\"hljs-number\">1<\/span>);\r\n    q.<span class=\"hljs-built_in\">push<\/span>(<span class=\"hljs-number\">3<\/span>);\r\n\r\n    cout &lt;&lt; <span class=\"hljs-string\">\"\u539f\u59cb\u961f\u5217\uff1a\"<\/span>;\r\n    <span class=\"hljs-keyword\">while<\/span> (!q.<span class=\"hljs-built_in\">empty<\/span>()) {\r\n        cout &lt;&lt; q.<span class=\"hljs-built_in\">front<\/span>() &lt;&lt; <span class=\"hljs-string\">\" \"<\/span>;\r\n        q.<span class=\"hljs-built_in\">pop<\/span>();\r\n    }\r\n    cout &lt;&lt; endl;\r\n\r\n    <span class=\"hljs-built_in\">sortQueue<\/span>(q);\r\n\r\n    cout &lt;&lt; <span class=\"hljs-string\">\"\u6392\u5e8f\u540e\u7684\u961f\u5217\uff1a\"<\/span>;\r\n    <span class=\"hljs-keyword\">while<\/span> (!q.<span class=\"hljs-built_in\">empty<\/span>()) {\r\n        cout &lt;&lt; q.<span class=\"hljs-built_in\">front<\/span>() &lt;&lt; <span class=\"hljs-string\">\" \"<\/span>;\r\n        q.<span class=\"hljs-built_in\">pop<\/span>();\r\n    }\r\n    cout &lt;&lt; endl;\r\n\r\n    <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-number\">0<\/span>;\r\n}\r\n<\/code><\/pre>\n<p>The output is:<\/p>\n<pre class=\"post-pre\"><code>\u539f\u59cb\u961f\u5217\uff1a5 2 8 1 3 \r\n\u6392\u5e8f\u540e\u7684\u961f\u5217\uff1a1 2 3 5 8 \r\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>To use a C++ queue to implement sorting from smallest to largest, you can follow these steps: First, insert the original data into the queue in sequence. Next, create a secondary queue and insert the first element from the original queue into the secondary queue. Next, the second element is removed from the original queue [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-19591","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to sort a C++ queue in ascending order? - Blog - Silicon Cloud<\/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:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to sort a C++ queue in ascending order?\" \/>\n<meta property=\"og:description\" content=\"To use a C++ queue to implement sorting from smallest to largest, you can follow these steps: First, insert the original data into the queue in sequence. Next, create a secondary queue and insert the first element from the original queue into the secondary queue. Next, the second element is removed from the original queue [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T19:07:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T16:04:06+00:00\" \/>\n<meta name=\"author\" content=\"Sophia Anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Sophia Anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/\"},\"author\":{\"name\":\"Sophia Anderson\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30\"},\"headline\":\"How to sort a C++ queue in ascending order?\",\"datePublished\":\"2024-03-15T19:07:45+00:00\",\"dateModified\":\"2024-03-21T16:04:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/\"},\"wordCount\":183,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/\",\"name\":\"How to sort a C++ queue in ascending order? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T19:07:45+00:00\",\"dateModified\":\"2024-03-21T16:04:06+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to sort a C++ queue in ascending order?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30\",\"name\":\"Sophia Anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g\",\"caption\":\"Sophia Anderson\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/sophiaanderson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to sort a C++ queue in ascending order? - Blog - Silicon Cloud","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:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/","og_locale":"en_US","og_type":"article","og_title":"How to sort a C++ queue in ascending order?","og_description":"To use a C++ queue to implement sorting from smallest to largest, you can follow these steps: First, insert the original data into the queue in sequence. Next, create a secondary queue and insert the first element from the original queue into the secondary queue. Next, the second element is removed from the original queue [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T19:07:45+00:00","article_modified_time":"2024-03-21T16:04:06+00:00","author":"Sophia Anderson","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Sophia Anderson","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/"},"author":{"name":"Sophia Anderson","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30"},"headline":"How to sort a C++ queue in ascending order?","datePublished":"2024-03-15T19:07:45+00:00","dateModified":"2024-03-21T16:04:06+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/"},"wordCount":183,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/","name":"How to sort a C++ queue in ascending order? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T19:07:45+00:00","dateModified":"2024-03-21T16:04:06+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-a-c-queue-in-ascending-order\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to sort a C++ queue in ascending order?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/19a24313de9c988db3d69226b4a40a30","name":"Sophia Anderson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c726c09aa40e37115fb5c62d0c3ed62c16ca255d3763e2e3ae83a70ddf8c2175?s=96&d=mm&r=g","caption":"Sophia Anderson"},"url":"https:\/\/www.silicloud.com\/blog\/author\/sophiaanderson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/19591","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=19591"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/19591\/revisions"}],"predecessor-version":[{"id":53341,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/19591\/revisions\/53341"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=19591"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=19591"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=19591"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}