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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
PR[E]D@TOR
1 / 1 / 0
Регистрация: 27.11.2011
Сообщений: 23
#1

Однонаправленный связанный список (Вставить новый узел с нулевым значением перед первым отрицательным элементом...) - C++

12.02.2013, 22:53. Просмотров 1307. Ответов 5
Метки нет (Все метки)

Помогите выполнить задание:
Тип информационной части узла списка - INT
Вид списка - Однонаправленный связанный список
Дополнительные Операции - Вставить новый узел с нулевым значением перед первым отрицательным элементом, Удалить узлы с четными значениями, Подсчитать количество узлов с нечетными значениями

Добавлено через 22 часа 16 минут
помогите пожалуйста
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2013, 22:53
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Однонаправленный связанный список (Вставить новый узел с нулевым значением перед первым отрицательным элементом...) (C++):

Перед элементом массива с порядковым номером K вставить новый элемент с нулевым значением - C++
Дан массив размера N и целое число K (1 ≤ K ≤ N). Перед элементом массива с порядковым номером K вставить новый элемент с нулевым...

В целочисленном массиве вставить новый элемент перед первым отрицательным элементом - C++
В одномерном массиве, элементы которого - целые числа, произвести следующие действия. Вставить новый элемент перед первым отрицательным...

Функция, которая вставляет перед каждым отрицательным элементом элемент с нулевым значением - C++
Есть двумерный динамический массив (матрица). Нужно написать функцию, которая вставляет перед каждым отрицательным элементом элемент с...

Перед каждым положительным элементом массива вставить элемент с нулевым значением, перезаписать эти элементы во второй массив - C++
Условие: дано массив размера N. Перед каждым положительным элементом массива вставить элемент с нулевым значением, перезаписать эти...

Получить разницу между первым элементом последовательности и числом, стоящим перед первым отрицательным - C++
Даны действительные числа а1, а2, .... Известно, что а1> 0 и что среди а2, а3, ... есть хотя бы одно отрицательное число. Пусть a1, ..., an...

Перед каждым положительным значением массива вставить элемент с нулевым значением - C++
Дан массив размера N. Перед каждым положительным значением массива вставить элемент с нулевым значением.

5
Wolkodav
607 / 460 / 32
Регистрация: 18.09.2012
Сообщений: 1,686
12.02.2013, 23:09 #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
struct Node
{
int data;
Node* next;
};
void Add(Node* first,int value)
{
Node* tmp=first;
while (tmp->next=NULL)
tmp=tmp->next;
Node* add=new Node();
add->data=value;
tmp->next=add;
return;
}
 
void AddAfterOtr(Node* first)
{
Node* tmp=first;
while (tmp->data>0)
tmp=tmp->next;
Node* add=new Node();
add->data=0;
add->next=tmp->next;
tmp->next=add;
return;
}
Тут добавление простого узла с заданым значением и Вставить новый узел с нулевым значением перед первым отрицательным элементом.
Остальное не сложно.
1
Kuzia domovenok
2119 / 1949 / 192
Регистрация: 25.03.2012
Сообщений: 6,755
Записей в блоге: 1
12.02.2013, 23:15 #3
Wolkodav, в односвязанном списке легче было бы добавлять в начало
C++
1
2
3
4
5
6
7
8
void Add(Node* first,int value)
{
 
Node* add=new Node();
add->data=value;
add->next=first;
first=add;
}
1
Wolkodav
607 / 460 / 32
Регистрация: 18.09.2012
Сообщений: 1,686
12.02.2013, 23:17 #4
Да, вы правы, что-то перемудрил, сори.
0
Kuzia domovenok
2119 / 1949 / 192
Регистрация: 25.03.2012
Сообщений: 6,755
Записей в блоге: 1
12.02.2013, 23:26 #5
хотя.... и я ошибся.
Чтобы это сработало first=add;
first не должен передаваться как аргумент функции.
после выхода из функции поля first->... могут измениться. сам first - нет!
я просто привык, что обычно first хранится как поле класса "список", а add - метод этого класса.

Добавлено через 3 минуты
вот, что я имел в виду
C++
1
2
3
4
5
6
7
8
9
10
11
12
struct Node
{
int data;
Node* next;
} *first;
void Add(int value)
{ 
Node* add=new Node();
add->data=value;
add->next=first;
first=add;
}
0
Wolkodav
607 / 460 / 32
Регистрация: 18.09.2012
Сообщений: 1,686
12.02.2013, 23:27 #6
( блин, и такое бывает)

Добавлено через 16 секунд
Я вас понял, что вы имели ввиду.
0
12.02.2013, 23:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2013, 23:27
Привет! Вот еще темы с ответами:

Вставить в линейный список перед элементом с заданным значением другой линейный список - C++
Как можно вставить в линейный список перед элементом с заданным значением другой линейный список? Как один элемент вставлять, я знаю, а вот...

Удалить первый положительный элемент массива; вставить новый элемент перед первым максимальным элементом - C++
Дан целочисленный массив размера N. Как удалить первый положительный элемент ? Как вставить новый элемент перед первым максимальным...

Вставить перед каждой серией массива элемент с нулевым значением. - C++
Дан целочисленный массив размера N. Вставить перед каждой его серией элемент с нулевым значением. Назовем серией группу подряд идущих...

Заменить все элементы, стоящие перед первым отрицательным элементом, на сумму отрицательных элементов - C++
Доброго времени суток, форумчане. Надысь задали мне контрольную работу по С++, но вот беда: язык я этот не учил никогда. Кое-какие части...


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

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

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