<p>摘要:C sort 函數用於對容器元素進行排序。預設情況下,它使用 </p>
<p><img src="https://img.php.cn/upload/article/000/000/164/171205434266801.jpg" alt="C++sort函數詳解與範例演示"></p>
<p><strong>C 排序函數詳解與範例示範</strong></p>
<p><strong>sort 函數概述</strong></p>
<p>sort函數是C 標準範本庫(STL) 中一個強大的函數,用於對容器元素進行排序。它根據指定的比較規則將容器中的元素排列成升序或降序。 </p>
<p>函數宣告如下:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:cpp;toolbar:false;'>template<typename Iter>
void sort(Iter first, Iter last);</pre><div class="contentsignin">登入後複製</div></div><p>其中:</p><ul><li><strong>#Iter</strong>:指向容器元素的迭代器類型,可以在容器中移動和訪問元素。 </li><li><strong>first</strong>:容器開始迭代器,指定要排序元素的範圍的第一個元素。 </li><li><strong>last</strong>:容器結束迭代器,指定要排序元素的範圍的最後一個元素之後的元素。 </li></ul><p><strong>自訂比較規則</strong></p><p>預設情況下,sort 函數使用<code><</code> 運算子進行比較,這表示它將容器元素按升序排列。如果您希望根據不同的規則排序,可以提供一個自訂比較函數:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:cpp;toolbar:false;'>bool compare(const Type1& a, const Type2& b)
{
// 自定义比较规则
}
// 在 sort 函数中使用自定义比较函数
sort(first, last, compare);</pre><div class="contentsignin">登入後複製</div></div><p><strong>實戰案例</strong></p><p><strong>範例1:對整數陣列排序</strong></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:cpp;toolbar:false;'>#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int arr[] = {5, 2, 7, 1, 3};
int len = sizeof(arr) / sizeof(arr[0]);
sort(arr, arr + len);
cout << "排序后的数组:";
for (int i = 0; i < len; i++)
{
cout << " " << arr[i];
}
cout << endl;
return 0;
}</pre><div class="contentsignin">登入後複製</div></div><p>輸出:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>排序后的数组: 1 2 3 5 7</pre><div class="contentsignin">登入後複製</div></div><p><strong>#範例2:對字串陣列排序</strong></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:cpp;toolbar:false;'>#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
string arr[] = {"apple", "orange", "banana", "kiwi", "mango"};
int len = sizeof(arr) / sizeof(arr[0]);
sort(arr, arr + len);
cout << "排序后的数组:";
for (int i = 0; i < len; i++)
{
cout << " " << arr[i];
}
cout << endl;
return 0;
}</pre><div class="contentsignin">登入後複製</div></div><p>輸出:</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>排序后的数组: apple banana kiwi mango orange</pre><div class="contentsignin">登入後複製</div></div>
以上是C++sort函數詳解與範例演示的詳細內容。更多資訊請關注PHP中文網其他相關文章!