Skip to content

ZAT Dictionary, a C++ project, integrates trie data structures for efficient word management. Structured around Node, Trie, and Vector classes, it swiftly loads data from an external file during initialization. The user-friendly GUI interface seamlessly executes operations like search, update, delete, and addition,

Notifications You must be signed in to change notification settings

ZainabEman/DSA-Project-ZAT-Dictionary-

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 

Repository files navigation

ZAT Dictionary

The ZAT Dictionary is a comprehensive C++ project that leverages the trie data structure to create a powerful and efficient tool for managing and exploring word meanings. This project is built on three key classes: Node, Trie, and Vector, working collaboratively to form a feature-rich dictionary capable of fast and reliable access to information.

Project Structure

Node Class

  • Building block for linked lists within the dictionary.
  • Holds character values and pointers to the next nodes.
  • Facilitates the creation of dynamic data structures.

Trie Class

  • Heart of the dictionary, implementing a trie data structure.
  • Hierarchical structure with each node having up to 26 children for efficient storage and retrieval.
  • Enables quick and organized representation of the entire dictionary.

Vector Class

  • Manages dynamic arrays, ensuring flexibility in data size and storage.
  • Contributes to the adaptability of the overall dictionary implementation.

Initialization and Data Loading

  • The dictionary is initialized by reading data from an external text file containing a pre-existing set of words and their meanings.
  • This initial dataset populates the dictionary, setting the stage for efficient word management.

Main Interface

  • Serves as a gateway for users to interact with the dictionary.
  • Offers operations such as search, update, delete, add word, and team details.
  • The trie structure ensures optimal efficiency in these operations.

Main Features

GUI

  • User-friendly interface designed for a visually intuitive experience.
  • Interactive operations allow users to search for meanings, add new words, and delete entries with ease.

Exception Handling

  • Precise error messages aid in quick issue resolution.
  • Improved debugging through explicit exception handling for identifying and addressing issues efficiently.

Working

Search Function and Suggestions

  • User-friendly main screen with search functionality and suggestions.

Adding Word

  • Top ten suggestions provided during word addition.

Update Function

  • Confirmation screen appears after entering an update, ensuring a successful word update.

Delete Function

  • Confirmation screen appears after entering a delete operation, ensuring a successful word deletion.

Add Word Function

  • Confirmation screen appears after entering an add word operation, ensuring successful addition.

Exit Function

  • Team details accessible from the main menu, providing a smooth exit from the application.

Conclusion

The ZAT Dictionary showcases the fusion of linked lists, trie structures, and dynamic arrays to create a robust and adaptable solution for word management. The trie structure's efficiency in organizing extensive word data makes this dictionary a valuable tool for both users and developers. Explore meanings, update entries, and manage your words effortlessly with the ZAT Dictionary.

About

ZAT Dictionary, a C++ project, integrates trie data structures for efficient word management. Structured around Node, Trie, and Vector classes, it swiftly loads data from an external file during initialization. The user-friendly GUI interface seamlessly executes operations like search, update, delete, and addition,

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages