Code Monkey home page Code Monkey logo

phonedirectory's Introduction

PhoneDirectory

PhoneDirectory is a Java application that simulates a phone directory, allowing users to store and manage contact information. It utilizes various data structures to efficiently store and retrieve data, including HashMap, Binary Search Tree (BST), and LinkedList.

Features

  • Add a new contact with name and phone number.
  • Search for a contact by name or phone number.
  • Update contact details such as name or phone number.
  • Delete a contact from the directory.
  • Display all contacts in alphabetical order or by phone number.
  • Import and export contacts to/from a file for data persistence.

Data Structures

The PhoneDirectory application utilizes the following data structures:

  • HashMap: Used for fast lookup of contacts by name, ensuring constant-time complexity for retrieval and storage.
  • Binary Search Tree (BST): Used to maintain contacts in sorted order by phone number, enabling efficient searching and retrieval operations.
  • LinkedList: Used for storing contacts in the order they were added, facilitating insertion and deletion of contacts.

Getting Started

To run the PhoneDirectory application on your local machine, follow these steps:

  1. Clone the repository:

git clone https://github.com/SajidBhatti786/PhoneDirectory.git

  1. Open the project in your preferred Java IDE.

  2. Build and run the application.

Usage

  1. Add a Contact: Use the "Add" functionality to enter the name and phone number of a new contact.
  2. Search for a Contact: Use the "Search" functionality to find a contact by name or phone number.
  3. Update a Contact: Use the "Update" functionality to modify the name or phone number of an existing contact.
  4. Delete a Contact: Use the "Delete" functionality to remove a contact from the directory.
  5. Display Contacts: Use the "Display" functionality to show all contacts in alphabetical order or by phone number.
  6. Import/Export Contacts: Use the "Import" and "Export" options to load contacts from a file or save contacts to a file for data persistence.

Contributing

Contributions to the PhoneDirectory project are welcome. If you have any suggestions, improvements, or bug fixes, please submit a pull request or open an issue in the GitHub repository.

Connect with me

Facebook LinkedIn GitHub

Keywords

  • PhoneDirectory
  • Java application
  • Phone directory
  • Contact management
  • Contact information
  • HashMap
  • Binary Search Tree (BST)
  • LinkedList
  • Add contact
  • Search contact
  • Update contact
  • Delete contact
  • Display contacts
  • Import contacts
  • Export contacts
  • Data structures
  • Data persistence
  • Sorting contacts
  • Name lookup
  • Phone number lookup
  • Fast retrieval
  • Constant-time complexity
  • Insertion and deletion
  • Alphabetical order
  • File management
  • Getting started
  • Local development
  • Clone repository
  • IDE
  • Build and run
  • Usage
  • Functionality
  • Contact details
  • Data storage
  • Data retrieval
  • Data modification
  • Display options
  • File import
  • File export
  • Contributing
  • Pull requests
  • Issue tracking
  • License
  • MIT License
  • Open source project
  • Customization
  • Bug fixes
  • Suggestions
  • Improvements
  • Data management
  • File handling
  • Data lookup
  • Sorting algorithms
  • Collaboration
  • Contact organization

phonedirectory's People

Contributors

sajidbhatti786 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.