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

Перекрестные ссылки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ массив одномерный http://www.cyberforum.ru/cpp-beginners/thread321849.html
поменять на противоположные знаки тех эл-в массива,которые встречаются ровно 1раз. утром сдавать.напишите полномтью программу.пожалуйста.на языке Си.
C++ одномерный и двумерный массивы, строки 3. Строки Дана строка из символов латинского алфавита. Замените все вхождения строки "two" на символ '2 4. Одномерный массив Преобразование массива Дан массив ,состоящий из n элементов.... http://www.cyberforum.ru/cpp-beginners/thread321844.html
Классы, Длинная арифметика, LongLong C++
Добрый день, Задание изначально было такое: Реализовать класс Money , используя для представления рублей класс LongLong. Класс Money - представлен двумя полями LongLong для рублей и unsigned...
Поменять знаки тех элементов массива, которые встречаются в нем один раз C++
поменять на противоположные знаки тех элементов массива,которые встречаются в массиве ровно 1 раз
C++ Ввести по строкам с клавиатуры двумерный массив и вычислить среднее арифметическое его элементов http://www.cyberforum.ru/cpp-beginners/thread321822.html
Ребят, надо написать программу, которая вводит по строкам с клавиатуры двумерный массив и вычисляет среднее арифметическое его элементов. Может кто-нибудь помочь? Просто завтра сдавать работу...
C++ Моделирование каммутатора ethernet (layer.2) помогите найти программу по заданной теме!!! Заранее благодарю.... подробнее

Показать сообщение отдельно
Lucifer91
7 / 7 / 1
Регистрация: 22.04.2011
Сообщений: 72

Перекрестные ссылки - C++

17.06.2011, 23:04. Просмотров 810. Ответов 0
Метки (Все метки)

Задание: Составить программу, формирующую "перекрестные списки" т. е. печатающую список слов, которые встречаются в анализируемом файле, а для каждого слова - список номеров строк, в которых это слово встречается. При решении задачи рекомендуется использовать следующие структуры данных:
struct LIST // список номеров строк для данного слова
{int num; struct LIST*p;}
struct NODE // узел дерева с информацией об очередном слове
{char *word; int k; struct NODE*left; struct NODE*right;}

Мой примерный план решения:
1.Запускается цикл по i просмотра файла по строкам
{
считываем строку(какую можно использовать функцию для считывания всей строки?)
если i == 1 берем первое слово и формируем корень дерева
Запускается цикл помещения слов строки в дерево (пока слово не будет равно NULL)
{
если слово больше чем узел дерева - идем вправо
если меньше - влево
если слова одинаковые, то добавляем структуру с
указанием номера строки (i) к этому узлу дерева
если слово равно eof , то завершение работы программы
}
}
// выделять слова из строки думаю при помощи функции strtok

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