С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 17.09.2018
Сообщений: 68
1

QuickSort C++ списка данных

20.11.2019, 17:36. Показов 1093. Ответов 0

Author24 — интернет-сервис помощи студентам
Дано множество записей о людях, каждая запись содержит такие основные поля, как имя, фамилия и год рождения. Для множества записей требуется реализовать быструю сортировку (quicksort). Также требуется реализовать сортировку по параметру(имя, фамилия, год рождения). Имена и фамилии берутся из файлов, затем генерируется файл с именем, фамилией и годом рождения, который впоследствии сортируется. Ниже приведен код без подпрограммы сортировки(quicksort).
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
#pragma once
 
#include <fstream>
#include <iostream>
#include <vector>
#include <string>
#include <math.h>
#include <time.h>
 
using namespace std;
 
const int N_MAX = 26;
 
struct Info
 
{
 
int Birth;
char Name[15];
char SurName[20];
 
};
 
enum keys
 
{
 
NAME, SURNAME, YEAR
 
};
 
void AddPerson(vector<Info> &Mas, Info temp)
 
{
 
Mas.push_back(temp);
 
}
 
void Input(vector<Info> &Mas)
 
{
 
ifstream In("Data.txt");;
 
Info temp;
 
while (!In.eof())
 
{
 
In >> temp.Name;
In >> temp.SurName;
In >> temp.Birth;
 
AddPerson(Mas, temp);
 
}
 
In.close();
 
}
void Print(const vector<Info> Mas)
 
{
 
ofstream Out("Sort.txt");
 
for (int i = 0; i < Mas.size(); i++)
 
Out << Mas[i].Name << " " << Mas[i].SurName << " " << Mas[i].Birth << "\n";
 
Out.close();
 
}
 
void Generate(int size)
 
{
 
srand(time(NULL));
 
ifstream fp("Names.txt");
 
ifstream fps("SurNames.txt");
 
ofstream fi("Data.txt");
 
string str;
 
string strs;
 
vector<string> coll;
vector<string> collS;
 
while (!fp.eof())
 
{
 
getline(fp, str);
getline(fps, strs);
coll.push_back(str);
collS.push_back(strs);
 
}
 
for (int i = 0; i < size; i++)
 
{
 
int index = rand() % coll.size();
 
int indexS = rand() % coll.size();
 
int Birth = rand() % 100 + 1900;
 
fi << coll[index] << " " << collS[indexS] << " " << Birth << endl;
 
}
 
fi << "Name Surname 1950";
 
fp.close();
 
fps.close();
 
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.11.2019, 17:36
Ответы с готовыми решениями:

QuickSort двунаправленного списка для полей типа string
Привет! В списке есть несколько полей. Реализовал QuickSort для поля типа int, сейчас стоит задача...

Quicksort для bidirectional_iterator либо (в крайнем случае) для списка
Здравствуйте, можно ли реализовать такую сортировку? Очень нужно для лабораторной. Заранее...

Синхронизировать индексы источника данных (списка) и списка в ListBox
Здраствуйте уважаемые программиисты! Столкнулся с такой задачей: имеется список продуктов:...

Создание списка, печать списка на экран, добавления элемента в начало списка, конец списка
Построить динамическую структуру типа список . Необходимо реализовать следующие процедуры: 1....

0
20.11.2019, 17:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.11.2019, 17:36
Помогаю со студенческими работами здесь

QuickSort
Полазил по форуму, не нашел ни одного толкового кода для QuickSort на C++ Все никак не могу...

QuickSort
Дан массив целых чисел. Отсортируйте его в порядке неубывания спомощью методы быстрой сортировки.

QuickSort на C++11
Написал быструю сортировку, добился работоспособности и сразу захотелось улучшить сам код. ...

QuickSort
Начал разбираться с сортировками и вот QuickSort меня озадачил. Дело в том что в интернете есть...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru