Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Естественное двухпутевое слияние дека 
:(
    Опции темы
novigalex
Дата 17.2.2013, 22:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 17.2.2013

Репутация: нет
Всего: нет



Реализация связи элементов линейного списка - указатели. Способ организации линейного связанного списка - дек.
Алгоритм сортировки - Естественное двухпутевое слияние. Не могу написать код сортировки, сам алгоритм понял, а с кодом разобраться не могу. Помогите заочнику закрыть задолжность

Код
#include "stdafx.h"
#include "iostream"
 
using namespace std;
  
struct Value
{
        public:int val;
        Value* Next;
        Value* Prev;
        Value(int n):Next(0),Prev(0),val(n){};
};
 class deq
{
        Value* Head;
        Value* Tail;
        public:void Add_First(int n);
        public:void Add_Last(int n);
        public:void Delete_First();
        public:void Delete_Last();
        public:void Print();
        public:void Sort();
        public:deq(){Head=NULL;Tail=NULL;}
};
 void deq::Add_First(int n)
{
        Value* Elem=new Value(n);    
        Elem->Prev=NULL;
        if (Head!=NULL)
        {
             Elem->Next=Head;
            Head->Prev=Elem;
            Head=Elem;
        }
        else
        {
            Elem->Next=NULL;
            Head=Tail=Elem;
        }
}
void deq::Add_Last(int n)
{
        Value* Elem=new Value(n);    
        Elem->Next=NULL;
        if (Tail!=NULL)
        {
            Elem->Prev=Tail;
            Tail->Next=Elem;
            Tail=Elem;
        }
        else
        {
            Elem->Next=NULL;
            Tail=Head=Elem;
        }
}
 void deq::Delete_First()
{
        Value *p;
        p=Head->Next;
        delete Head;
        Head=p;
        p->Prev=NULL;
}
void deq::Delete_Last()
{
        Value *p;
        p=Tail->Prev;
        delete Tail;
        Tail=p;
        p->Next=NULL;
}
 void deq::Print()
{
        Value *p=Head;
        while(p!=NULL)
        {
                cout<<p->val<<"  ";
                p=p->Next;
        }
        cout<<"\n";
        }
 void deq::Sort()
{}
int main()
{     deq elements;
 
        elements.Add_First(15);
        elements.Add_First(1);
        elements.Add_First(3);
        elements.Add_First(7);
        elements.Add_First(9);
        elements.Add_Last(4);
        elements.Add_Last(6);
        elements.Print();
        elements.Sort();
        cout << "\n";
        elements.Print();

        system("pause");
        return 0;
}


Модератор: не забываем пользоваться кнопочкой "Код"

Это сообщение отредактировал(а) bsa - 18.2.2013, 20:02
PM MAIL   Вверх
baldina
Дата 18.2.2013, 09:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 15
Всего: 101



и где код?
PM MAIL   Вверх
novigalex
Дата 18.2.2013, 14:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 17.2.2013

Репутация: нет
Всего: нет



добавил

Это сообщение отредактировал(а) novigalex - 18.2.2013, 14:56
PM MAIL   Вверх
novigalex
Дата 3.3.2013, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 17.2.2013

Репутация: нет
Всего: нет



всё, разобрался smile 
PM MAIL   Вверх
NoviceF
Дата 3.3.2013, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 313
Регистрация: 13.3.2012
Где: Ростов-на-Дону

Репутация: 2
Всего: 2



Цитата(novigalex @  3.3.2013,  16:12 Найти цитируемый пост)
всё, разобрался

ну так порадуй своих собратьев студентов - запости решение, может потом кто поисковиком найдёт )
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0896 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.