Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.04.2012, 21:44   #1
mazzahaker
Пользователь
 
Регистрация: 04.12.2011
Сообщений: 23
По умолчанию Односвязный список

Добрый вечер! Помогите пожалуйста! Нужно в самом конце программы удалить весь список, не могу сделать, вот сама программа, а как удалить, подскажите?
Код:
#include "iostream"
#include "fstream"

using namespace std;
 
struct node
{
    char d;
    node *p;
};

node *first(char d);
void push(node **top, char d);
char pop(node **top);
node *concatenate(node **top, node **top2);

int main()
{
	ifstream fin ("in.txt");
	ifstream fins ("in2.txt");
    char t;
    fin >> t;
    node *top=first(t);
    fin >> t;
    while (fin.good())
	{
        push(&top,t);
        fin >> t;
    }
    fins >> t;
    node *top2=first(t);
    fins >> t;
	int i=0, n=0;
	cout << "Enter N";
	cin >> n; n--;
    while (fins.good() && (i<n))
	{
        push(&top2,t);
        fins >> t;
		i++;
    }
    node *res=concatenate(&top,&top2);
    while (res)
        cout << pop(&res) << ' ';

	int a=0;
	cin >> a;
	return 0;
}

node *first(char d)
{
    node *pv=new node;
    pv->d=d;
    pv->p=0;
    return pv;
}
void push(node **top, char d)
{
    node *pv=new node;
    pv->d=d;
    pv->p=*top;
    *top=pv;
}
char pop(node **top)
{
    char temp=(*top)->d;
    node *pv=*top;
    *top=(*top)->p;
    delete pv;
    return temp;
}
node *concatenate(node **top, node **top2)
{
    char temp;
    temp=pop(top2);
    node *pv=first(temp);
    while (*top2!=NULL)
	{
        char temp2=pop(top2);
        push(&pv,temp2);
    }
    while (*top!=NULL)
	{
        char temp2=pop(top);
        push(&pv,temp2);
    }
    return pv;
}
mazzahaker вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
односвязный список Alexander1205 Общие вопросы C/C++ 1 04.07.2011 00:59
Необходимо реализовать классы, односвязный список для хранения целых чисел, односвязный список для хранен lineico Помощь студентам 2 09.05.2011 17:45
односвязный список melkaya19 Помощь студентам 5 21.06.2010 12:36
C++. Односвязный список. Уничтожить список Olya90 Помощь студентам 2 10.06.2009 18:52