Skip to main content

A small homework assignment to navigate through creating a python library

Project description

Graphs Library: Dijkstra's Shortest Path

This Python library provides an implementation of Dijkstra's shortest path algorithm and other graph-related utilities. The goal of this project is to practice packaging a Python library into a standardized format so it can be easily installed and used.

Repository Structure:

src/
├── graphs_asaqib1/
│   ├── __init__.py
│   ├── heapq.py
│   └── sp.py
├── test.py
├── README.md
└── pyproject.toml

*graphs_asaqib1/sp.py: Contains the implementation of Dijkstra’s shortest path algorithm
*graphs_asaqib1/heapq.py: Helper function for priority queue operations
*test.py: Script to test the library
*pyproject.toml: Packaging configuration
*README.md: This file which contains basic information about this library

Installation:

You can install the package using pip:

pip install asaqib1==0.0.6

Features:

*Finds the shortest paths from a source vertex to all other vertices in a weighted graph
*Supports extension with other graph algorithms
*Uses a min-heap to efficiently select the next vertex with the smallest known distance

Example:

For a graph with 9 vertices, the shortest path from vertex 0 to vertex 1 may have a cost of 4, and to vertex 8 may have a cost of 14.

Author Information

*Author: Alizah Saqib
*GitHub: https://github.com/asaqib1

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

asaqib1-0.0.8.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

asaqib1-0.0.8-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file asaqib1-0.0.8.tar.gz.

File metadata

  • Download URL: asaqib1-0.0.8.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for asaqib1-0.0.8.tar.gz
Algorithm Hash digest
SHA256 1fb6ee8f89216404973e5fcf3404df0461a5e12dd9e55f320023c18c9b94910f
MD5 a8a6fb2ac257f415f2efcf4af3bc1121
BLAKE2b-256 ca2e1171cc98a687a9519e6d28b1ea11112c75fcce9d6ba79f018e6b02514484

See more details on using hashes here.

File details

Details for the file asaqib1-0.0.8-py3-none-any.whl.

File metadata

  • Download URL: asaqib1-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for asaqib1-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 0910c195461a6ec2a5730247bd487f4c9bf3f641de3bc30fff142caea9dffb70
MD5 dc9bd244ea13cac65d8ad6c2dbf483ac
BLAKE2b-256 9c5d6844c9ab80cb15b39d1fcc214ea66da4ff3a1e86237995ad88a44242df4d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page