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.6.tar.gz (9.3 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.6-py3-none-any.whl (1.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: asaqib1-0.0.6.tar.gz
  • Upload date:
  • Size: 9.3 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.6.tar.gz
Algorithm Hash digest
SHA256 476378b24e6e104b3abebbcf4003068f9d34d9849bd0d33ffe45c80ebcdefcf2
MD5 8277f0c27ccc845d0932527efd86a3c1
BLAKE2b-256 bde0bd8ea9ffdd22ae11feb30f14745416e30191479ae31143862fc4f5e075ee

See more details on using hashes here.

File details

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

File metadata

  • Download URL: asaqib1-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 1.6 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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 07dea78eadbfe7240abfd043ed6229cb213f39e425f0f72733f3046cfe439d86
MD5 fc7200ab595116e9d5277470b7524771
BLAKE2b-256 5bf8e3fb61834cc784b8910a67551f1befebe86165f778076614f0653aee6b33

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