Русенски Университет
"Ангел Кънчев"
Катедра ЕЕА
Курсова работа 1 по Синтез и Анализ на Алгоритми
на ………………….
студент … курс
специалност: Компютърни системи и технологии
гр. … ,фак.№ ….
Русе,
……….. г.
Разработил:.............. Проверил:..............
Условие на задачата:
3. Телефонен указател се въвежда от клавиатурата в следния формат:
Name: David Goss
Surname: Burns
Tel: 230239
Name: John Silver
Surname:Adams
Tel: 436784
Name: Ana Nowak
Surname:Burns
Tel: 213154
…
Да се разработи програма,която изпълнява следните функции:
- Създава двоично дърво на търсене,съдържащо информация само за фамилиите и честотата им на срещане в указателя(ключ на търсене – фамилия);
· Извежда информация(от създаденото двоично дърво на търсене)за броя на лицата със зададена(от клавиатурата) фамилия;
[Извежда информация (от създаденото двоично дърво на търсене) за броя на лицата с най-често срещаната фамилия. ]
· Извежда информацията, сортирана във възходящ ред на ключа(речникова подредба);
Код на програмата:
#include <iostream>
#include <string>
using namespace std;
struct Item { //структура , един елемент от дървото.
char sname[31];
int broi;
Item *L, *R;
};
typedef Item* Point; // Указател към елементите на дървото.
Point root; // Коренът на дървото , от тип указател
void Add_S_tree(char x[31], Point &p) // Създаване на дървото
{
if (p==NULL) {
p= new Item;
strcpy (p->sname,x);
p->broi=1;
p->L=NULL; p->R=NULL;
}
else if (strcmp (x,p->sname)<0)
0 коментара
За да коментирате, трябва да сте влезли в профила си.
Влезте