C++ のフォワード リスト |セット 1 (概要と重要な機能) この記事では、その他の機能について説明します。 前方リストで使用できる、挿入と削除以外の操作の一部は次のとおりです。
1. マージ() :- この関数は、ある前方リストを別のリストとマージするために使用されます。両方のリストがソートされている場合、返される結果のリストもソートされます。
2. 演算子「=」 :- この演算子は、1 つの前方リストを別のリストにコピーします。この場合に作成されるコピーはディープコピーです。
CPP// C++ code to demonstrate the working of // merge() and operator= #include #include using namespace std; int main() { // Initializing 1st forward list forward_list<int> flist1 = {1 2 3}; // Declaring 2nd forward list forward_list<int> flist2; // Creating deep copy using '=' flist2 = flist1; // Displaying flist2 cout << 'The contents of 2nd forward list' ' after copy are : '; for (int &x : flist2) cout << x << ' '; cout << endl; // Using merge() to merge both list in 1 flist1.merge(flist2); // Displaying merged forward list // Prints sorted list cout << 'The contents of forward list ' 'after merge are : '; for (int &x : flist1) cout << x << ' '; cout << endl; return 0; }
出力:
b+ 木
The contents of 2nd forward list after copy are : 1 2 3 The contents of forward list after merge are : 1 1 2 2 3 3
時間計算量: ○(1)
補助スペース: ○(1)
3. 選別() :- この関数は、前方リストをソートするために使用されます。
4. 個性的() :- この関数は、複数出現する数値を削除し、一意の要素を含む前方リストを返します。この関数を正常に実行するには、前方リストをソートする必要があります。
typescript の foreach ループCPP
// C++ code to demonstrate the working of // sort() and unique() #include #include // for sort() and unique() using namespace std; int main() { // Initializing 1st forward list forward_list<int> flist1 = {1 2 3 2 3 3 1}; // Sorting the forward list using sort() flist1.sort(); // Displaying sorted forward list cout << 'The contents of forward list after ' 'sorting are : '; for (int &x : flist1) cout << x << ' '; cout << endl; // Use of unique() to remove repeated occurrences flist1.unique(); // Displaying forward list after using unique() cout << 'The contents of forward list after ' 'unique operation are : '; for (int &x : flist1) cout << x << ' '; cout << endl; return 0; }
出力:
The contents of forward list after sorting are : 1 1 2 2 3 3 3 The contents of forward list after unique operation are : 1 2 3
時間計算量: ○(1)
補助スペース: ○(1)
5. 逆行する() :- この関数は、前方リストを反転するために使用されます。
6. スワップ() :- この関数は、ある前方リストの内容を別のリストと交換します。
CPP// C++ code to demonstrate the working of // reverse() and swap() #include #include // for reverse() and swap() using namespace std; int main() { // Initializing 1st forward list forward_list<int> flist1 = {1 2 3}; // Initializing 2nd forward list forward_list<int> flist2 = {4 5 6}; // Using reverse() to reverse 1st forward list flist1.reverse(); // Displaying reversed forward list cout << 'The contents of forward list after' ' reversing are : '; for (int &x : flist1) cout << x << ' '; cout << endl << endl; // Displaying forward list before swapping cout << 'The contents of 1st forward list ' 'before swapping are : '; for (int &x : flist1) cout << x << ' '; cout << endl; cout << 'The contents of 2nd forward list ' 'before swapping are : '; for (int &x : flist2) cout << x << ' '; cout << endl; // Use of swap() to swap the list flist1.swap(flist2); // Displaying forward list after swapping cout << 'The contents of 1st forward list ' 'after swapping are : '; for (int &x : flist1) cout << x << ' '; cout << endl; cout << 'The contents of 2nd forward list ' 'after swapping are : '; for (int &x : flist2) cout << x << ' '; cout << endl; return 0; }
出力:
The contents of forward list after reversing are : 3 2 1 The contents of 1st forward list before swapping are : 3 2 1 The contents of 2nd forward list before swapping are : 4 5 6 The contents of 1st forward list after swapping are : 4 5 6 The contents of 2nd forward list after swapping are : 3 2 1
時間計算量: ○(1)
補助スペース: ○(1)
グレーコード
7. クリア() :- この関数は、フォワード リストの内容をクリアします。この関数の後、前方リストは空になります。
8. 空の() :- この関数は、リストが空の場合は true を返し、それ以外の場合は false を返します。
csma と csma cdCPP
// C++ code to demonstrate the working of // clear() and empty() #include #include // for clear() and empty() using namespace std; int main() { // Initializing forward list forward_list<int> flist1 = {1 2 3}; // Displaying forward list before clearing cout << 'The contents of forward list are : '; for (int &x : flist1) cout << x << ' '; cout << endl; // Using clear() to clear the forward list flist1.clear(); // Displaying list after clear() performed cout << 'The contents of forward list after ' << 'clearing are : '; for (int &x : flist1) cout << x << ' '; cout << endl; // Checking if list is empty flist1.empty() ? cout << 'Forward list is empty' : cout << 'Forward list is not empty'; return 0; }
出力:
The contents of forward list are : 1 2 3 The contents of forward list after clearing are : Forward list is empty
時間計算量: ○(1)
補助スペース: ○(1)
forward_list に関する最近の記事