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

помогите написать функцию слияния списков - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Начало работы в С++ http://www.cyberforum.ru/cpp-beginners/thread969798.html
Какую среду для С++ использовать, чтоб был хороший компилятор? как установить и начать работать? Пожалуиста, сразу ссылки. Windows 7 (64)
C++ Реализовать рекурсию Доброго времени суток! Никак не пойму как это сделать, хотябы направьте меня, что бы самому додумать Пусть в алгебраической записи выражения имеется одна операция - умножения, обозначаемая обычным... http://www.cyberforum.ru/cpp-beginners/thread969789.html
Разработать приложение, реализующее следующие функции C++
Разработать приложение, реализующее следующие функции:  Выделяет всю доступную процессу память  Освобождает всю выделенную память  Определяет количество выделенной памяти  Определяет время...
C++ Автоопределение длины строки
char f; cout<<"Vvedite stroku->; cin>>f; Как заставить компилятор определять длину строки, чтобы не тратить зря память, выделяя ее на избыточное количество элементов? Чтобы как бы одновременно...
C++ принадлежит ли заданная точка области http://www.cyberforum.ru/cpp-beginners/thread969765.html
Определить, принадлежит ли заданная точка с координатами (х,у) заштрихованной области. #include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv) {...
C++ Не пойму ,в чём ошибка . Всё компилируется Я создал функцию поиска по заданном ключу , ключ вводится с клавиатуры . int Poisk(int *arr,int size,int key) { for(int i=0;i<size;i++) { if(key == *(arr+i)) {return i;} else return... подробнее

Показать сообщение отдельно
Laurensii
0 / 0 / 0
Регистрация: 29.05.2012
Сообщений: 4

помогите написать функцию слияния списков - C++

05.10.2013, 21:13. Просмотров 220. Ответов 0
Метки (Все метки)

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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#include <iostream>
#include <conio.h>
using namespace std;
 
struct Node
{
 
    int a;
    Node *next;
    Node(int a1){
        a=a1;
        
        next=NULL;
    }
};
class List
{ 
public:
    Node *top;
    List();
    void vvod(Node *pNext);//dobavlenie v konec spiska
    Node * Psl();//poisk poslednego el-ta v spiske
    void vivod();
    void sort(int k);
    Node *elm(int n, int m);//element spiska po nomeru
    
};
List::List(){
    top=NULL;
}
void List::vvod(Node *pNext)
{
    if(top!=NULL){
        Psl()->next=pNext;
    }
    else{
        top=pNext;
    }
}
Node * List::Psl(){
    Node * Odn = top;
    if(Odn == NULL){
        return NULL;
    }
    while(Odn->next!=NULL){
        Odn=Odn->next;
    }
    return Odn;
}
void List::vivod(){
    Node *t=top;
    if(t==NULL){
        cout<<"spisok pust"<<endl;
    }
    do{
        cout<<t->a<<"->";
    }
    while((t=t->next)!=NULL);
}
void List::sort(int k)
{
    for(int i=0;i<k;i++){
        for(int j=k-1;j>i;j--)
            if(elm(j,k)->a<elm(j-1,k)->a)
            {
                int b;
                b=elm(j,k)->a;
                elm(j,k)->a=elm(j-1,k)->a;
                elm(j-1,k)->a=b;
                
            }
            
        }
    }
 
 
 
Node * List::elm(int n, int m){
    Node *t=top;
    if(t==NULL||n>m-1){
        return NULL;
    }
    for(int i=0;i<m;++i){
        if(i==n){
            return t;
        }
        t=t->next;
    }
    return NULL;
    
}
 
void main(){
    List list1, list2, list;
    Node *node, *x;
    int l, k;
    int a, b;
    cout<<"kol-vo el-v v spiske 1: ";
    cin>>l;
    cout<<endl;
    cout<<"Enter spis 1: ";
    for(int i = 0; i<l; i++)
    {
        
        cin>>a;
        node = new Node(a);
        list1.vvod(node);
    }
        cout<<"kol-vo el-v v spiske 2: ";
        cin>>k;
        cout<<endl;
        cout<<"Enter spis 2: ";
        for(int i=0; i<k;++i){
            cin>>b;
            node =new Node(b);
            list2.vvod(node);
            
        }
        
        list1.vivod();
        cout<<endl;
        list2.vivod();
        cout<<endl;
        list1.sort(l);
        cout<<endl;
        list2.sort(k);
        cout<<endl;
        list1.vivod();
        cout<<endl;
        list2.vivod();
        cout<<endl;
        
 
        system("pause");
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru