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

Однонаправленный линейный список - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.76
ivan6394
Сообщений: n/a
01.07.2012, 03:29     Однонаправленный линейный список #1
здравствуйте!
помогите помочь написать задача или киньте ссылку по её решению.
"однонаправленный линейный список. максимальный элемент скопировать в новый"
большое спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.07.2012, 03:29     Однонаправленный линейный список
Посмотрите здесь:

C++ линейный однонаправленный список (вопрос по сути)
C++ Линейный однонаправленный список; ошибка сегментации
C++ Линейный однонаправленный список
C++ Линейный, однонаправленный, связанный список для структур
Линейный однонаправленный список C++
C++ Линейный циклический однонаправленный список
Линейный однонаправленный список C++
C++ Переписать слова предложения в однонаправленный линейный список

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
asidorchenko
379 / 205 / 25
Регистрация: 09.04.2012
Сообщений: 635
01.07.2012, 14:33     Однонаправленный линейный список #2
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
#include <stdio.h>
#include <iostream>
 
using namespace std;
 
// класс однонаправленный линейный список
class list1
{
private:
 // указатель на следующий элемент однонаправленного линейного списка
 list1* next;
 // значение элемента
 int value;
 
 
public:
 // пустой конструктор
 list1(){ next = NULL;}
 
 // вернуть указатель на последующий элемент списка
 list1* get_next() { return next; }
 
 // вернуть указатель на значение текущего элемента
 int get_value() { return value; }
 
 void set_value(int val) { value = val; }
 
 void print_value() { printf("%d ", value); }
 
 // создать следующий элемент
 void create_next(int val) { this->next = new list1(); this->next-
 
>set_value(val);}
 
 void find_max()
 {
  int f = 0;
  int max;
  list1* p = this;
  list1* prevp;
  while ( p != NULL)
  {
    if (f == 0)
    {
      max = p->get_value();
      f = 1;
    }     
    else
    {
     if ( p->get_value() > max)
      max = p->get_value();
    }
    prevp = p;
    p = p->get_next();    
  }
  prevp->create_next(max); 
  printf("max: %d\n", max); 
 }
 
 void print()
 {
  list1* p = this;
  while ( p != NULL)
  {
    p->print_value();
    p = p->get_next(); 
  }
 }
};
 
 
int main()
{
 list1 t;
 list1 *p;
 t.set_value(5);
 t.create_next(9);
 p = t.get_next();
 p->create_next(1);
 p = p->get_next();
 p->create_next(3);
 p = p->get_next();
 p->create_next(3);
 p = p->get_next();
 p->create_next(6);
 p = p->get_next();
 p->create_next(8);
 t.find_max();
 t.print();
 return 0;
}
Yandex
Объявления
01.07.2012, 14:33     Однонаправленный линейный список
Ответ Создать тему
Опции темы

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