Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
AnreyKazakov
Заблокирован
#1

задача найти преимущества использования контенеров vec и set - C++

29.09.2012, 16:53. Просмотров 378. Ответов 3
Метки нет (Все метки)

Пока не нашел особо больших кординальных преимуществ set'a . В учебнике предлагают решить такой пример: Вводим слово-исключение, если такого в контенере нет -> забиваем в конт. Потом вводим текст и удаляем слова исключения, если найдутся...
Не знаю, я только одно пока отличие нашел, это find, у векторя ее наверно нет (или я про нее не знаю просто), поэтому приходится перебирать элементы по одному.
С сетом начал писать, но сразу какая-то ошибка странная вылетать стала, ни в какую не хчет считать разницу между итераторами find и end ....
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <string>
#include <utility>
#include <iterator>
#include <cstddef>
#include <set>
using namespace std;
int main(){
    string str;
    set<string> set1;
    set1.insert(" ");
    cout<<"Enter the initial data"<<endl;
    while(getline(cin,str)){
        set<string>::iterator ifind=set1.find(str);
        
        set<string>::difference_type k=set1.end()-set1.begin(); /*!!! =(((( */
        cout<<k;
        
        if(ifind!=set1.end())set1.insert(str);
        }
    cout<<"ok"<<endl;
    for(set<string>::iterator ix=set1.begin();ix!=set1.end();++ix){cout<<*ix<<" ";}
    cout<<endl;
    return 0;
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.09.2012, 16:53     задача найти преимущества использования контенеров vec и set
Посмотрите здесь:

Задача со строками без использования библиотеки string.h C++
C++ поменять в настройке Character Set на Use Multy-Byte Character Set
Задача из книги "Програмирование - принципы и практика использования C++" C++
C++ как работает метод vec.clear()
C++ Задача на вычисление суммы без использования массивов
C++ Задача по программированию. (Без использования массива)
OpenCv 2 4 7 Ошибка при создании файла vec C++
C++ Контейнер set. Найти имена всех файлов в папке
Задача без использования типа string C++
Найти с помощью Set и Multiset все такие цифры, которые не встречаются в двузначных числах C++
Страуструп, "Принципы и практика использования С++": задача на нахождение моды C++
Найти такой подмассив, что его сумма максимальна (через контейенры map и set) C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.09.2012, 17:20     задача найти преимущества использования контенеров vec и set #2
AnreyKazakov, для того, чтобы ответить на поставленный вопрос, надо изучить то, из чего сделаны контейнеры vector и set. Вы понимаете различия между деревом поиска и просто массивом?
AnreyKazakov
Заблокирован
29.09.2012, 18:17  [ТС]     задача найти преимущества использования контенеров vec и set #3
Цитата Сообщение от soon Посмотреть сообщение
Вы понимаете различия между деревом поиска и просто массивом?
Нет, я седне только с set ом возиться начал, а про ошибку не подскажите? Ни в какую не прет =(
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
29.09.2012, 18:34     задача найти преимущества использования контенеров vec и set #4
AnreyKazakov, в set используется BidirectionalIterator, к нему неприменимы стандартные операции сложения и вычитания.

std::distance
Yandex
Объявления
29.09.2012, 18:34     задача найти преимущества использования контенеров vec и set
Ответ Создать тему
Опции темы

Текущее время: 14:13. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru