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

Удалить из двусвязного списка все элементы до первого "*" и после последнего "*" - C++

Восстановить пароль Регистрация
 
mamaev
0 / 0 / 0
Регистрация: 22.11.2011
Сообщений: 13
11.06.2014, 12:28     Удалить из двусвязного списка все элементы до первого "*" и после последнего "*" #1
Помогите написать программу: Дан двусвязный список, состоящий из n символов, два из которых "*". Удалить из него все элементы до первого элемента "*" и после последнего элемента "*".
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.06.2014, 12:28     Удалить из двусвязного списка все элементы до первого "*" и после последнего "*"
Посмотрите здесь:

C++ Как на языке "С" удалить в строке все цифры 3 перед первой точкой и заменить все '+' после певрой точки на '-'?
C++ Удалить из массива "лишние" (кроме первого) элементы
C++ Ввести имя фамилию и отчество как одно данное типа строка. Определить длину строки и количество гласных в нем. Удалить все буквы "а" и "о" в фамилии.
C++ Определить длину каждого слова. Удалить все буквы "а" и "о" с фамилии
C++ Шаблон двусвязного списка и ошибка "Члены недоступны"
C++ Создать список из целых чисел. После каждого элемента, равного "х" вставить элемент, равный "у"
Переписать в файл О все элементы файла К с заменой в них символа "0" на символ "1" и наоборот C++
Переписать в файл О все элементы файла К с заменой в них символа "0" на символ "1" и наоборот C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
11.06.2014, 13:33     Удалить из двусвязного списка все элементы до первого "*" и после последнего "*" #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <algorithm>
#include <list>
 
int main()
{
   std::list<char> letters = {'a', 'b', 'c', '*', 'd', 'f', 'g', '*', 'h', 'i'};
   auto asterix_pos = std::find(letters.begin(), letters.end(), '*');
   letters.erase(letters.begin(), asterix_pos);
   asterix_pos = std::next(asterix_pos);
   asterix_pos = std::next(std::find(asterix_pos, letters.end(), '*'));
   letters.erase(asterix_pos, letters.end());
   for (char c : letters) std::cout << c << " ";
   std::cout << std::endl;
}
Yandex
Объявления
11.06.2014, 13:33     Удалить из двусвязного списка все элементы до первого "*" и после последнего "*"
Ответ Создать тему
Опции темы

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