#include <algorithm> template <class InputIterator1, class InputIterator2> bool lexicographical_compare(InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, InputIterator2 last2); template <class InputIterator1, class InputIterator2, class Compare> bool lexicographical_compare(InputIterator1 first1, InputIterator1 last1, InputIterator2 first2, InputIterator2 last2, Compare comp);
#include <stdio.h> #include <vector> #include <algorithm> using namespace std; int main() { // 初期設定 vector<int> v1 {10, 11, 12, 13, 14}; printf("v1 :"); for (auto x : v1) printf(" %d", x); printf("\n"); vector<int> v2 {11, 12, 13, 14, 15}; printf("v2 :"); for (auto x : v2) printf(" %d", x); printf("\n"); vector<int> v3 {12, 13, 14, 15, 16}; printf("v3 :"); for (auto x : v3) printf(" %d", x); printf("\n"); // v1 と v2 bool b = lexicographical_compare(v1.begin(), v1.end(), v2.begin(), v2.end()); if (b) printf(" v1 は v2 より前\n"); else printf(" v1 は v2 より後\n"); // v3 と v2 b = lexicographical_compare(v3.begin(), v3.end(), v2.begin(), v2.end()); if (b) printf(" v3 は v2 より前\n"); else printf(" v3 は v2 より後\n"); return 0; }
v1 : 10 11 12 13 14 v2 : 11 12 13 14 15 v3 : 12 13 14 15 16 v1 は v2 より前 v3 は v2 より後
菅沼ホーム | 本文目次 | 演習問題解答例 | 付録目次 | 索引 |