C++ 演算法 merge() 函式
示例
合併兩個向量
vector<int> numbers1 = {1, 4, 9, 16};
vector<int> numbers2 = {2, 4, 6, 8};
vector<int> merged(8);
merge(numbers1.begin(), numbers1.end(), numbers2.begin(), numbers2.end(), merged.begin());
for (int item : merged) {
cout << item << " ";
}
自己動手試一試 »
定義和用法
merge()
函式將兩個資料範圍的值複製到另一個數據範圍。
目標資料範圍應該足夠大,能夠包含其他兩個資料範圍的所有元素。
如果兩個資料範圍是已排序的,那麼目標資料範圍也將是已排序的。
資料範圍透過迭代器指定。
語法
merge(iterator start1, iterator end1, iterator start2, iterator end2, iterator destination);
引數值
引數 | 描述 |
---|---|
start1 | 必需。指向第一個資料範圍起點的迭代器。 |
end1 | 必需。指向第一個資料範圍終點的迭代器。此位置之前的元素將被包含,但此位置的元素將不被包含。 |
start2 | 必需。指向第二個資料範圍起點的迭代器。 |
end2 | 必需。指向第二個資料範圍末尾的迭代器。將包含此位置之前的元素,但不包含此位置的元素。 |
destination | 必需。指向要寫入合併資料的範圍的迭代器。 |
技術詳情
返回 | 指向合併資料末尾的迭代器。這是範圍中最後一個元素之後的位置。 |
---|
相關頁面
在我們 資料結構教程 中瞭解更多關於資料結構的資訊。
在我們 迭代器教程 中瞭解更多關於迭代器的資訊。
在我們 演算法教程 中瞭解更多關於演算法的資訊。