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

Поиск элемента в списке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Окно появляется и сразу же пропадает http://www.cyberforum.ru/cpp-beginners/thread423182.html
Доброго времени суток! Проблема состоит в следующем. Недавно начал изучать С++. Так как я новичок не получается написать даже элементарную программку. После попытки написать первую программку для вывода сообщения "Hello world", сначала выбивало ошибку в строке return 0, теперь вроде бы все нормально но нет задержки окно появляется и сразу же пропадает. Работаю в программе Visual Studio 2008....
C++ Формирование, сортировка и обработка динамических структур данных. Требуется решить задачу формирования, сортировки и обработки динамических структур данных. Требуется создать динамический массив структур со следующими полями: растение, семейство, вид, род, назначение, территория произрастания. Необходимо реализовать следующие действия: -отсортировать массив по семейству растений; -сформировать массив растений,имеющих одну территорию произрастания; -... http://www.cyberforum.ru/cpp-beginners/thread423172.html
C++ генератор rand
Добрый вечер! Возникла проблема с генератором rand. Нужно немного подредактировать код Условие задачи По самолёту проводится 3 отдельных выстрела, вероятность попадания каждого раза равно 0,3. Для выхода из строя достаточно 3 попаданий. При одном попадании самолёт выходит из строя с вероятностью 0,2; при двух (выстрелах) попаданиях 0,6. Найти вероятность того, что самолёт будет выведен из...
Составить класс для работы с целочисленной матрицей C++
Составить класс для работы с целочисленной матрицей произвольного размера, который задается в конструкторе,где данная матрица создается динамически. Включить саму матрицу во внутреннюю часть класса. Во внешней части задать и реализовать следующие функции-методы: -функция автоматического (через функцию rand) заполнение матрицы значениями из диапазона от -N до N (данный параметр передаются в...
C++ Работа с текстовым файлом http://www.cyberforum.ru/cpp-beginners/thread423136.html
Добрый вечер, помогите пожалуйста с решением следущей проблемы: Есть текстовый файл, в котором находится 40 000 различных английских слов, каждое слово начинается на новой строке, самое короткое слово имеет одну букву, самое длинное 8. Нужно написать программу в Си, где введём слово, она просмотрит файл и выпишет все слова с файла которые даное слово имеют как подслово.
C++ реализация класса строка не могу понять как реализовать ... помогите вот там где "???????????" там абсолютно непонятно, что мне делать.... задание: реализовать класс строка с динамическим кол-вом эел-тов, требования: 1) возврат подстроки (вывести элементы из строки например с 3 по 5) 2) изменить размер строки путем добавления в конец пустых символов 3) вставить подстроку в строку после определенного символа (символ... подробнее

Показать сообщение отдельно
besbyblik
1 / 1 / 0
Регистрация: 25.12.2010
Сообщений: 77
06.01.2012, 01:43  [ТС]     Поиск элемента в списке
NoMasters, односвязный линейный список

вот класс списков
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
class List{ // Класс списков
   Node *first; // Указатель на первое звено
   Node *last; // Указатель на последнее звено
public:
List( ) // Конструктор по умолчанию 
{ first = 0; last = 0; } // создает пустой список 
~List( ); // Деструктор
bool Empty( ) const // Проверка, не пуст ли список
{ return (first = = 0); }
T& Front( ){ return first->d; } // Ссылка на первый элемент
void Push_Front(T Val); // Вставить новое звено в начало списка
void Push_Back(T Val); // Вставить новое звено в конец списка 
T Pop_Front( ); // Удаление первого звена
size_t Size( ); // Количество звеньев списка
class Iterator{ // Класс итераторов списка
Node* curr; // Указатель на текущее звено списка
public:
Iterator(Node *pn = 0) // Конструктор создает итератор
{ curr = pn; } // по указателю pn на звено списка
Iterator(Iterator& p) // Конструктор копирования
{ curr = p.curr; }
Node& operator*( ) // Доступ к текущему звену
{ return *curr; }
Node* operator->( ) // Указатель на текущее звено списка
{ return curr;  }
Iterator& operator++( ) // Префиксный инкремент
{ // Используется в виде  ++p
curr = curr->next; // Возвращает итератор на 
return *this; // следующее звено списка
}
Iterator operator++(int) // Постфиксный инкремент
{  // Используется в виде  p++
Iterator tmp = *this; // tmp – копия текущего итератора
curr = curr->next; // Изменение текущего итератора
return tmp; // Возвращение предыдущего значения итератора
}
bool operator= =(Iterator p) // Сравнение итераторов на равенство
{ return curr = = p.curr; }
bool operator!=(Iterator p) // Сравнение итераторов на неравенство
{ return curr != p.curr; }
}; // Конец объявления класса Iterator
Iterator Begin( ) // Получение итератора 
{ return Iterator(first); } // на первое звено списка
Iterator End( ) // Получение итератора на звено списка, 
{ return Iterator(0); } // следующее за последним звеном
Iterator InsertAfter(Iterator p, T val); // Вставка звена после итератора
void EraseAfter(Iterator p); // Удаление звена после итератора p
};
void PrintList(List& L, char delimiter = ' '); // Вывод списка
#endif
 
Текущее время: 00:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru