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

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

Войти
Регистрация
Восстановить пароль
 
кщтеук34
1 / 1 / 0
Регистрация: 27.02.2013
Сообщений: 70
#1

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

27.02.2013, 21:10. Просмотров 781. Ответов 6
Метки нет (Все метки)

помогите доработать программу! Нужно сделать что бы менял два элемента в списке местами
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
#include <iostream>
#include <time.h>
using namespace std;
struct TNode {
int value;
TNode* pnext;
};
 void add2list(TNode **pphead, int val)
{
TNode **pp = pphead, *pnew;
while(*pp)
{
if(val < (*pp)->value)
break;
else
pp = &((*pp)->pnext);
}
pnew = new TNode;
pnew->value = val;
pnew->pnext = *pp;
*pp = pnew;
}
 
 void print(TNode *phead)
{
TNode* p = phead;
while(p)
{
cout << p->value << ' ';
p = p->pnext;
}
cout << endl;
}
 void deleteList(TNode *phead)
{
if(phead)
{
deleteList(phead->pnext);
if(phead)
delete phead;
}
}
 
int main()
{
    int res1;
TNode *phead = 0;
srand(time(0));
for(int i = 0; i < 10; ++i)
    
add2list(&phead, res1=(rand() % 100));
 
cout << "Elements of the list:" << endl;
print(phead);
deleteList(phead);
return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.02.2013, 21:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Поменять местами два элемента в списке (C++):

Поменять местами два элемента массива - C++
подскажите ,массив из 16 HWND элементов ,как обменять 2 элемента местами в массиве простите ,ошибся в заголовке

Поменять местами два элемента массива - C++
Помогите решить пжл! в С++ ваще не шарю , а скора сессия I сем – Алгоритмические языки программирования Разработать схемы...

Поменять местами два элемента в массиве - C++
Добрый вечер. Такой вопрос. Как в двумерном массиве поменять два элемента. Первый элемент задаётся пользователем, а второй рядом стоящий...

Поменять местами два элемента массива - C++
Значит вот такую задачу на С++ мне помогли написать здесь,но сложновато для понимания,есть ли другие решения этой задачи? #include...

Поменять местами два элемента односвязного списка - C++
Дан односвязный список. Требуется напечатать исходный список. Поменять местами два элемента списка, номера которых введёт пользователь с...

Поменять местами два элемента двусвязного списка - C++
Доброго времени суток. Помогите пожалуйста с задачей. Необходимо реализовать функцию, которая меняет местами два элемента в двусвязном...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Kins
59 / 58 / 6
Регистрация: 03.02.2013
Сообщений: 167
27.02.2013, 21:22 #2
вот алгоритм перемены мест:
C++
1
2
3
temp = element 1;
element 1= element 2;
element 2= temp;
0
кщтеук34
1 / 1 / 0
Регистрация: 27.02.2013
Сообщений: 70
27.02.2013, 21:26  [ТС] #3
Цитата Сообщение от Kins Посмотреть сообщение
вот алгоритм перемены мест:
C++
1
2
3
temp = element 1;
element 1= element 2;
element 2= temp;
а как будет применим к моей программе этот алгоритм?
0
Kins
59 / 58 / 6
Регистрация: 03.02.2013
Сообщений: 167
27.02.2013, 21:32 #4
Цитата Сообщение от кщтеук34 Посмотреть сообщение
а как будет применим к моей программе этот алгоритм?
если вы сами писали код, то должны понимать, где происходить должна замена)

Добавлено через 1 минуту
Цитата Сообщение от кщтеук34 Посмотреть сообщение
}
pnew = new TNode;
pnew->value = val;
pnew->pnext = *pp;
*pp = pnew;
}
как я понял, это место тут)
0
кщтеук34
1 / 1 / 0
Регистрация: 27.02.2013
Сообщений: 70
28.02.2013, 18:50  [ТС] #5
Цитата Сообщение от Kins Посмотреть сообщение
если вы сами писали код, то должны понимать, где происходить должна замена)

Добавлено через 1 минуту

как я понял, это место тут)
что то никак не получается применить этот алгоритм( можно подробнее?
0
Kins
59 / 58 / 6
Регистрация: 03.02.2013
Сообщений: 167
28.02.2013, 20:06 #6
Цитата Сообщение от кщтеук34 Посмотреть сообщение
можно подробнее?
Извиняюсь, просто мне ваш код местами непонятен, изза того, что я много еще что не знаю.
Например *pp. Были бы комментарии, понятней все выглядело.
0
Croessmah
01.03.2013, 21:56     Поменять местами два элемента в списке
  #7
 Комментарий модератора 
Запрещено размещать тему в нескольких разделах одновременно (кросспостинг), а также дублировать тему в одном разделе.
Правила форума

Тема закрыта
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.03.2013, 21:56
Привет! Вот еще темы с ответами:

Поменять Два элемента динам. массива местами - C++
... int *p=(int *)malloc(k*sizeof(int)); // Ввел динамически массив Хочу поменять местами 5 и 7 элементы: ...

Односвязные списки. Поменять местами два элемента - C++
Помогите доделать функцию замены двух элементов в списке вот структура struct TNode { int value; TNode* pnext; }; Сама...

Поменять местами два минимальных элемента в матрице - C++
Помогите пожалуйста! Задание: поменять местами два минимальных элемента в матрице

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


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.03.2013, 21:56
Закрытая тема Создать тему
Опции темы

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