find

Материал из cppreference.com
Перейти к: навигация, поиск

Синтаксис:

    #include <set>
    iterator find( const key_type& key );
    const_iterator find( const key_type& key ) const;

Функция find() возвращает итератор на ключ key либо итератор на конец контейнера multiset, если ключ key не был найден.

В примере find() используется для поиска и удаления одного подходящего элемента:

    multiset<int> ms;
    multiset<int>::iterator iter;
    int i;
 
    for (i = 1; i < 5; i++) {
        ms.insert(i);
        ms.insert(i*i);
        ms.insert(i-1);
    }
 
    cout << "было: " ;
    for (iter = ms.begin(); iter != ms.end(); ++iter)
        cout << " " << *iter;
    cout << "." << endl;
 
    iter = ms.find( 3 );
    if ( iter != ms.end() ) {
        ms.erase( iter );
    }
 
    cout << "стало:" ;
    for (iter = ms.begin(); iter != ms.end(); ++iter)
        cout << " " << *iter;
    cout << "." << endl;

The above code produces the following output:

было:  0 1 1 1 2 2 3 3 4 4 9 16.
стало: 0 1 1 1 2 2 3 4 4 9 16.

Обратите внимание, что была удалена только одна тройка.

find() выполняется за логарифм.

Личные инструменты
Пространства имён
Варианты
Действия
Навигация
Инструменты
На других языках