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

Информация о карманной сортировке - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Очень трудно. http://www.cyberforum.ru/cpp-beginners/thread172250.html
Написать таблицу 3х6 (столбцы и строки соответственно). Что бы при запуске программы в ячейках таблицы появлялись 5 слов(одновременно в разных ячейках): Process 1, Process 2, Process 3, Process 4, Process 5.(в случайном порядке). И чтобы при запуске программы переходили с ячейки на ячейку.
C++ Ищу третье издание Язык программирования С++ в отличном от DJVU формате Даже стыдно как-то создавать тему... НО... . Ищу третье издание Язык программирования С++ в отличном от DJVU формате. Нужно, дабы читать на плеере. А то на компе третье издание, а на плеере читаю 2-е.. Не коммильфо. Если такого не имеется на русском - подойдет на английском. Если не имеется и на английском - посоветуйте как конвертнуть DJVU в txt... Естесно не напрямую, через PDF и т.д.... http://www.cyberforum.ru/cpp-beginners/thread172240.html
Для каждого слова первого предложения определить, входит ли оно во второе предложение C++
Здравствуйте. Я нуб в программировании, только начинаю осваивать. Помогите пожалуйста составить программу по следующим критериям: Даны два предложения. Для каждого слова первого предложения определить, входит ли оно во второе предложение. Пройдено нами совсем немного, прошу помочь написать код. Если можно с пояснениями.
C++ Известны углы α и β у основания. Выяснить, если это возможно, тип трапеции
Известны углы α и β у основания трапеции. Выяснить, если это возможно,тип трапеции (прямоугольная, равнобедренная, прямоугольник).
C++ найдите ошибку в лабораторке пример 2 http://www.cyberforum.ru/cpp-beginners/thread172182.html
#include <iostream> using namespace std; struct Worker { char fio;
C++ найдите ошибку в лабораторке #include "stdafx.h" #include <iostream> using namespace std; int sum(int а, int b); // оголошення функції int main(){ подробнее

Показать сообщение отдельно
rita-zaya123
0 / 0 / 0
Регистрация: 15.02.2012
Сообщений: 29
22.04.2012, 17:19     Информация о карманной сортировке
вот есть блочная сортировка но ошибки начинаются ещё с подключения библиотек

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
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
#include <iostream>
#include <iomanip>
using namespace std;
 
#define NARRAY 8  /* array size */
#define NBUCKET 5 /* bucket size */
#define INTERVAL 10 /* bucket range */
 
struct Node 
{ 
    int data;  
    struct Node *next; 
};
 
void BucketSort(int arr[]);
struct Node *InsertionSort(struct Node *list);
void print(int arr[]);
void printBuckets(struct Node *list);
int getBucketIndex(int value);
 
void BucketSort(int arr[])
{   
    int i,j;
    struct Node **buckets;  
 
    /* allocate memory for array of pointers to the buckets */
    buckets = (struct Node **)malloc(sizeof(struct Node*) * NBUCKET); 
 
    /* initialize pointers to the buckets */
    for(i = 0; i < NBUCKET;++i) {  
        buckets[i] = NULL;
    }
 
    /* put items into the buckets */
    for(i = 0; i < NARRAY; ++i) {   
        struct Node *current;
        int pos = getBucketIndex(arr[i]);
        current = (struct Node *) malloc(sizeof(struct Node));
        current->data = arr[i]; 
        current->next = buckets[pos];  
        buckets[pos] = current;
    }
 
    /* check what's in each bucket */
    for(i = 0; i < NBUCKET; i++) {
        cout << "Bucket[" << i << "] : ";
        printBuckets(buckets[i]);
        cout << endl;
    }
 
    /* sorting bucket using Insertion Sort */
    for(i = 0; i < NBUCKET; ++i) {  
        buckets[i] = InsertionSort(buckets[i]); 
    }
 
    /* check what's in each bucket */
    cout << "-------------" << endl;
    cout << "Bucktets after sorted" << endl;
    for(i = 0; i < NBUCKET; i++) {
        cout << "Bucket[" << i << "] : ";
        printBuckets(buckets[i]);
        cout << endl;
    }
 
    /* put items back to original array */
    for(j =0, i = 0; i < NBUCKET; ++i) {    
        struct Node *node;
        node = buckets[i];
        while(node) {
            arr[j++] = node->data;
            node = node->next;
        }
    }
    
    /* free memory */
    for(i = 0; i < NBUCKET;++i) {   
        struct Node *node;
        node = buckets[i];
        while(node) {
            struct Node *tmp;
            tmp = node; 
            node = node->next; 
            free(tmp);
        }
    }
    free(buckets); 
    return;
}
 
/* Insertion Sort */
struct Node *InsertionSort(struct Node *list)
{   
    struct Node *k,*nodeList;
    /* need at least two items to sort */
    if(list == 0 || list->next == 0) { 
        return list; 
    }
    
    nodeList = list; 
    k = list->next; 
    nodeList->next = 0; /* 1st node is new list */
    while(k != 0) { 
        struct Node *ptr;
        /* check if insert before first */
        if(nodeList->data > k->data)  { 
            struct Node *tmp;
            tmp = k;  
            k = k->next; 
            tmp->next = nodeList;
            nodeList = tmp; 
            continue;
        }
 
        for(ptr = nodeList; ptr->next != 0; ptr = ptr->next) {
            if(ptr->next->data > k->data) break;
        }
 
        if(ptr->next!=0){  
            struct Node *tmp;
            tmp = k;  
            k = k->next; 
            tmp->next = ptr->next;
            ptr->next = tmp; 
            continue;
        }
        else{
            ptr->next = k;  
            k = k->next;  
            ptr->next->next = 0; 
            continue;
        }
    }
    return nodeList;
}
 
int getBucketIndex(int value)
{
    return value/INTERVAL;
}
 
void print(int ar[])
{   
    int i;
    for(i = 0; i < NARRAY; ++i) { 
        cout << setw(3) << ar[i]; 
    }
    cout << endl;
}
 
void printBuckets(struct Node *list)
{
    struct Node *cur = list;
    while(cur) {
        cout << setw(3) << cur->data;
        cur = cur->next;
    }
}
 
int main(void)
{   
    int array[NARRAY] = {29,25,3,49,9,37,21,43};
 
    cout << "Initial array" << endl;
    print(array);
    cout << "-------------" << endl;
 
    BucketSort(array); 
    cout << "-------------" << endl;
    cout << "Sorted array"  << endl;
    print(array); 
    return 0;
}
вот такой должен быть ответ. ссылка на прогу и на ответ
http://www.bogotobogo.com/Algorithms/bucketsort.php

Добавлено через 10 минут
так же и код с этой темы тоже с ошибками и тот и другой. не пойму в чем дело.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru