![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
![]()
Задание: Циклический сдвиг элементов списка вправо на N позиций.
Помогите пожалуйста найти ошибку if (!head) { cout << "Список пуст!" << endl; return; } list *p;list *pr; p=head; int count=0; while((p->next)!=NULL){ if(count>=num) { return; } pr=p; p=p->next; if(p->next==NULL) { p->next=head; head=p; pr->next=NULL; count++; } } |
![]() |
![]() |
![]() |
#2 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
![]()
Перейди на стр.2
Последний раз редактировалось ura_111; 15.02.2017 в 18:51. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
![]()
Первый - не кольцевой.
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
![]() ![]() Последний элемент присоединяем перед головой, предыдущий указывает на нулл |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
![]()
[IMG]file:///C:/Users/home/Desktop/111.png[/IMG]
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
![]()
Задумка вот такая
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
![]()
// Добавление в начало списка
void CListRightShiftItems::addItem(int item) { list *newItem = new list; newItem->key = item; if (head == NULL) { head = newItem; head->next = NULL; } else { newItem->next = head; head = newItem; } } Однонаправленный |
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
![]()
Ты всё ещё продолжаешь рисовать 2 разных списка?
У тебя две последовательности экземпляров структуры/класса? |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
![]()
Один экземпляр. Изначально у меня первый вариант - простой односвязный список
Затем по ходу выполнения программы он получается замкнутым и потом в нужном месте размыкаю его. |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 25
|
![]()
Первый вид: там где последний элемент ссылается на NULL
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Циклический сдвиг элементов списка | artilun | Помощь студентам | 3 | 12.02.2017 13:15 |
Осуществить циклический сдвиг элементов прямоугольной матрицы на n элементов вправо или вниз | Nekro95 | Помощь студентам | 12 | 07.11.2012 22:31 |
циклический сдвиг элементов массива | Carter | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 19.12.2011 19:54 |
Не получается циклический сдвиг элементов списка влево | Джиксер | Общие вопросы C/C++ | 5 | 02.06.2010 23:38 |