"Как мне вернуть первый и последний индекс строки в вектор с C ++? - PullRequest
1 голос
/ 27 сентября 2019

Это проблема кодирования от Edabit.Я пытаюсь сосредоточиться на моих навыках решения проблем в C ++.

Проблема состоит в том, чтобы вернуть первый и последний индекс символа из строки.Я думаю, что для каждого экземпляра char c (второй аргумент) в std :: string word (первый аргумент) мне нужно нажать (char c) с push_back на пустую строку и вернуть первый и последний индекс из этой пустой строки.Или я мог бы просто извлечь первый и последний экземпляр символа из исходной строки, используя (например: std::string word.being())?

Я включил код ниже в то, что у меня есть.Я просто застрял на том, как реализовать мою идею выше с помощью синтаксиса.Я думаю, что у меня есть правильная идея, но я не уверен, как это сделать.Я не хочу точного ответа, просто руководство о том, что делать дальше.

std::vector<int> charIndex(std::string word, char c) {
    std::string newWord = "";
    for(int i = 0; i < word.size(); ++i){
        std::string size.push_back[i] = newWord;
        //for every instance of char c in std::string word, I need to 
        //push that (char c) to empty string and return first and last index
        if(newWord[i] ==  )
    }
}

Это примеры ожидаемых результатов:

charIndex("circumlocution", "c") ➞ [0, 8]
The first "c" has index 0, the last "c" has index 8.
charIndex("happy", "h") ➞ [0, 0]
Only one "h" exists, so the first and last index is 0.

1 Ответ

0 голосов
/ 27 сентября 2019

Понял !!

vector<int> arr;
arr[0] = word.find_first_of(c);
arr[1] = word.find_last_of(c);
return arr;

Спасибо всем !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...