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.9

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.9.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.9-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: asaqib1-0.0.9.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.9.tar.gz
Algorithm Hash digest
SHA256 cd6cbc467259ec4672161a772f25eff28315149691803de665dc5c5f98e2bb4a
MD5 28f3045d74eb41ecd2f687a5de2f141e
BLAKE2b-256 2a2a9e0e3b74a79cf8a5b6e41bea5b52f84d5363a976bf793342ea6d9ac8f1e1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: asaqib1-0.0.9-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.9-py3-none-any.whl
Algorithm Hash digest
SHA256 714e12f4452bc78b01b3f4d8c4ba4a0450d05118c33f8be36ce7d672a3775c05
MD5 b51c43792bd60faf03d8e8e6a0cc8af2
BLAKE2b-256 b2472759458c5945046135ae7a9a253f57ad518c6a1781f4014c498366277887

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