С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
SirAsgard
1 / 1 / 0
Регистрация: 20.04.2012
Сообщений: 46
#1

Вывести первый элемент в списке - C++

08.12.2012, 22:32. Просмотров 357. Ответов 1
Метки нет (Все метки)

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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#include <iostream>
#include <conio.h>
#include <string>
using namespace std;
 
template<class T> class List
{
public:
        List()
        {
              head=NULL;
              tail=NULL;
        };        
        ~List()
        {
                while(head)
                {
                    tail=head->next;
                    delete head;
                    head=tail;
                }
        }
 
        void push_back(T val)
        {
                Node* Temp;
                Temp=new Node;
                Temp->elem=val;
                if(head==0)
                {
                        head=Temp;
                        tail=Temp;
                        return;
                }
                tail->next=Temp;
                tail=Temp;
        }
 
        void print()
        {
                if (head==0)
                {
                        cout << "List is empty!";
                }
                for(Node* ptr=head; ptr!=0; ptr=ptr->next)
                {
                        cout<<ptr->elem<<" ";
                }
                cout<<"\n";
        }
 
       
 void push_front(T val)
        {
                Node* Temp;
                Temp=new Node;
                Temp->elem=val;
                Temp->next=head;
                head=Temp;
        }
 
 
        void find(T val)
        {
                if(head==0)
                {
                        cout <<  "List is empty!\n";
                }
                for(Node* ptr=head; ptr!=0; ptr=ptr->next)
                {
                        if(ptr->elem=val)
                                cout<<"Element "<< val <<" is found\n";
                        return;
                }
                cout<<"Element "<< val <<" is not found\n";
        }
        
        void insert(T val)
        {
                if(head==0)
                {
                        push_front(val);
                        return;
                }
                Node* Temp=new Node;
                Temp->elem=val;
                Node* founded=head;
                for(founded; founded!=0; founded=founded->next)
                {
                        if(founded->elem<val)
                                break;
                }
                if(founded==0)
                {
                        push_front(val);
                        return;
                }
                Temp->next=founded->next;
                founded->next=Temp;
        }
private:
        struct Node
        {
                Node()
                {
                 next=0;
                 elem=0;
                }
                Node* next;
                T elem;
        };
 
        Node* head;
        Node* tail;
};
 
 
int main()
{
        List<int> Lst;
        Lst.push_front(5);
        Lst.push_back(10);
        Lst.push_back(15);
        Lst.push_front(1);
        Lst.push_back(25);
        Lst.push_back(4);
        Lst.print();
        Lst.find(15);
        Lst.print();
        getch();
        return 0;
}
Осталось вывести первый элемент. Подскажите саму реализацию. Что-то со front нужно играться..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2012, 22:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывести первый элемент в списке (C++):

Вывести содержимое списка в следующем порядке: первый элемент, последний элемент, второй элемент, предпоследни - C++
#include &lt;iostream&gt; #include &lt;list&gt; #include &lt;iterator&gt; void output(std::list&lt;int&gt; myList, std::list&lt;int&gt;::iterator iter1,...

Iterator в списке - как вывести на экран конкретный элемент списка? - C++
Доброго времени суток! Недавно начал работу со списком в c++ и у меня возник вопрос: Предположим, есть список, состоящий из 5...

вывести первый ненулевой элемент в строке - C++
если ввод без пробелов, работает норм, если впереди поставить пробелы, собственно выводит пробел, а мне надо первую букву вывести + как...

Переместить элемент в конец списка и вывести указатели на первый и последний элементы - C++
Помогите, пожалуйста! Прошу вас о помощи в написании программы на С++... Задача такова: Дан указатель P0 на один из элементов непустого...

Вывести на печать первый отрицательный элемент массива и его порядковый номер - C++
1. Дан массив чисел B. Вывести на печать первый отрицательный элемент массива и его порядковый номер.

Переместить данный элемент в конец двусвязного списка и вывести указатели на первый и последний элементы - C++
Ребятки, помогите решить, пожалуйста) Дан указатель P0 на один из элементов непустого двусвязного списка. Переместить данный элемент в...

1
Wolkodav
605 / 458 / 32
Регистрация: 18.09.2012
Сообщений: 1,685
08.12.2012, 22:41 #2
Эмм, ну один из вариантов перегрузить []. Ну типо, вывести 10 элемент. Да кстати удобно в таком случае хронить кол-во элементов в списке( ну просто поле создать, когда вызывается конструктор ++ и все). Ну и проверяешь если номер элемента <кол-во элементов (т.к. нумерация с нуля) то идёшь по списку( ну там for, переходишь к следующему) иначе выход. Что-то типо такого.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2012, 22:41
Привет! Вот еще темы с ответами:

Строки. Как найти в слове первый элемент? Второй элемент, последний элемент? - C++
как найти в слове первый элемент?Второй элемент,последний элемент.С помощью каких операторов это делается??

Первый элемент массива 1 умножить на все элементы массива 2 и вывести результат - C++
Добрый день. Прошу помочь решить вот такую вот задачку: &quot;есть два массива, в которых границы задает пользователь. Например, один...

В списке целых чисел поменять местами max элемент и min элемент - C++
Помогите написать эту программу на С++.

Структура "Информация": - носитель; - объем; - название; - автор. Удалить первый элемент с заданным объемом информации, добавить элемент перед элемент - C++
Структура &quot;Информация&quot;: - носитель; - объем; - название; - автор. Удалить первый элемент с заданным объемом информации, добавить...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.