Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 03.12.2017
Сообщений: 37
1

Создать односвязный кольцевой линейный список элементы которого целые числа

03.10.2018, 18:29. Показов 2854. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Создать односвязный кольцевой линейный список элементы которого целые числа.
Удалить каждый 3 элемент пока в списке не останутся 2 елементи и найти их суму.

Помогите пожалуйста написать код, если не трудно. Не очень понимаю списки. Буду благодарен
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.10.2018, 18:29
Ответы с готовыми решениями:

Реализовать односвязный список, элементы которого содержат целые числа
1.1 «Список I». Реализовать односвязный список, элементы которого содержат целые числа. Реализовать...

Создать односвязный линейный список, элементами которого являются случайные натуральные числа
Создать односвязный линейный список, элементами которого являются случайные натуральные числа....

Сформировать односвязный кольцевой линейный список по файлу целых чисел
Помогите пожалуйста,разобраться..для меня тема новая,не очень понимаю как написать код к заданию:...

Задали односвязный линейный список с целыми числами. Создать новый список, который содержит элементы заданного списка в обратном порядке
Задали односвязный линейный список с целыми числами. Создать новый список, который содержит...

1
447 / 333 / 172
Регистрация: 01.07.2015
Сообщений: 1,162
03.10.2018, 21:28 2
Лучший ответ Сообщение было отмечено Abram21 как решение

Решение

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
#include <iostream>
 
using namespace std;
 
struct List {
  int data;
  List* next;
};
 
void add(List*& head, List*& tail, int what) {
  List* new_one = new List;
 
  new_one->data = what;
 
  if (!head && !tail) {
    head = new_one;
    tail = new_one;
    new_one->next = new_one;
  } else {
    tail->next = new_one;
    tail = new_one;
    new_one->next = head;
  }
}
 
void del(List*& head, List*& tail, List*& what) {
  if (head == tail) {
    delete what;
  } else if (head == what) {
    List* tmp = head;
    
    head = head->next;
 
    delete tmp;
  } else if (tail == what) {
    List* tmp_2 = head;
 
    while (tmp_2->next != tail)
      tmp_2 = tmp_2->next;
 
    List* tmp = tail;
 
    tmp_2->next = head;
    tail = tmp_2;
 
    delete tmp;
  } else {
    List* before = head;
 
    while (before->next != what)
      before = before->next;
 
    before->next = what->next;
 
    delete what;
  }
}
 
int32_t main() {
  List* head = nullptr;
  List* tail = nullptr;
 
  int n;
  cin >> n;
 
  for (int i = 0; i < n; ++i) {
    int t;
    cin >> t;
 
    add(head, tail, t);
  }
 
  while (n > 2) {
    List* for_del = head;
    
    for (int i = 0; i < 2; ++i)
      for_del = for_del->next;
 
    del(head, tail, for_del);
    
    --n;
  }
 
  cout << head->data + head->next->data;
}
1
03.10.2018, 21:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.10.2018, 21:28
Помогаю со студенческими работами здесь

Создать кольцевой односвязный список, элементы которого будут вводиться с клавиатуры
Нужно сделать кольцевой односвязный список, элементы которого будут вводиться с клавиатуры. Я...

Из введенных слов создать односвязный кольцевой список
Доброй ночи Задача звучит так: Из введенных слов создать односвязный кольцевой список. Далее,...

Кольцевой односвязный список, удалить из него все отрицательные числа
Здравствуйте, необходимо решить проблему в задаче: &quot;Сформулируйте кольцевой список с вещественным...

Создать односвязный линейный список
Доброго времени суток! Помогите пожалуйста с кодом программы: Нужно создать односвязный линейный...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru