0 / 0 / 0
Регистрация: 07.02.2017
Сообщений: 2
1

Двусвязный список, удалить 1 элемент и вывести то что осталось

02.03.2017, 23:16. Показов 415. Ответов 1
Метки нет (Все метки)

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
#include "stdafx.h"
#include <iostream>
using namespace std;
struct ds
{ int d; ds*next; ds*pred; }; 
ds *first=0, *last=0;
 
void make(int n,ds**first, ds*pred)//Создание  списка
{ 
    if(n>0)
    {(*first)=new ds();
      cout<<"Enter-> ";
      cin>>(*first)->d;
      (*first)->pred=pred;
      (*first)->next=NULL;
      make(n-1,&((*first)->next),(*first));
      
    }else (*first)=NULL;
} 
 
void show(ds*c=first){ //Печать списка
 
while(c!=NULL) //допоки список не завершено 
{cout<<c->d<<"\t"; 
 
c=c->next;//перехід до наступного елемента 
 
 
}
} 
 
ds*Px(ds*first, int num)//удаление элемента 
{   ds*ptr;
    ds*t=first;
    for(int i=1; i<num&&t!=NULL;i++)
    t=t->next;
    if(t!=NULL)
    {
        if(t->pred==NULL)
        {
            first=first->next;
            delete(t);
                first->next=NULL;
            t=first;
        }
        else{
            if(t->next==NULL)
             {t->pred->next=NULL;
                delete(t);
                 t=first; }
        else
            { 
                ptr=t->next;
                t->pred->next=t->next;      
                t->next->pred=t->pred;
                delete (t);
                t=ptr;
            }
        
    
        }   
    
    }
    
   return first;
}
Добавлено через 53 секунды
Не могу выводить если удаляю первый!
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.03.2017, 23:16
Ответы с готовыми решениями:

Двусвязный список - Добавить элемент после заданного, удалить заданный элемент
Реализуйте списочную структуру в виде класса. работа состоит из двух частей: из класса (структуры,...

Динамический двусвязный список (операции: добавить элемент после данного, удалить данный элемент …)
реализовать Динамический двусвязный список (операции: добавить элемент после данного, удалить...

Удалить элемент из «стека» и поместить его в «очередь» и «двусвязный список»
Удалить элемент из «стека» и поместить его в «очередь» и «двусвязный список». Результат проверить.

В пользовательском классе "Двусвязный список" продублировать первый положительный элемент и удалить первый отрицательный
Здравствуйте,помогите пожалуйста в тете &quot;Двусвязный список&quot; Создать двусвязный список с...

1
15 / 15 / 6
Регистрация: 30.11.2016
Сообщений: 101
03.03.2017, 00:03 2
Мен используй STL и не ломай голову
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.03.2017, 00:03

Вставить элемент в двусвязный список
Всем добрый день! Никогда не дружила со списками, но решила, что пора подружиться. :) Задача...

Создать двусвязный список, содержащий целые числа. Удалить все максимальные элементы
Создать двусвязный список, содержащий целые числа. Удалить все максималь* ные элементы. Например,...

Первую цифру числа удалить прибавить к тому что осталось
Для любого натурального числа алгоритм делает операции: отделяет от числа первую цифру и добавляет...

В непустой двусвязный список вставить новый элемент Е1 перед первым вхождением элемента Е
Помогите решить задачу на C# В непустой динамически двусвязный список вставить новый элемент Е1...

Удалить элемент стека, равный 10, или вывести, что такого элемента нет
Помогите доделать программу,нужно чтобы выводило что элемента нет, когда его нет в стеке. Вот код:...

В непустой динамический двусвязный список вставить новый элемент E1 перед первым вхождением элемента Е
нужно реализовать задачу на с# В непустой динамический двусвязный список вставить новый элемент E1...


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

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

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