Skip to main content

Data Structures and Algorithms Source Code

Project description

UC Berkeley Extension - Data Structures and Algorithms Class

A collection of classes and functions for use in UC Berkeley Extension's Comp Sci X404.1: Data Structures and Algorithms Class.

API Documentation

Command Line Installation

pip install ucxdsa

Updating an existing version of the DSA package

pip install --upgrade ucxdsa

Quick Usage Guide

from dsa.modulename import classname

To determine the version, enter the following in Python or Jupyter:

import dsa
print(dsa.version)

Revision History

2025.1.17

  • Updated hash function code

2025.1.15

  • Cleaned up README.md

2024.12.24

  • Made default size for Trie graph larger
  • Cleaned up Heap module
  • Cleaned up Huffman module to use DSA data structures
  • Added more tests
  • Added more details to documentation

2024.12.22

  • Created Github Pages access to documentation
  • Added more details to documentation

2024.08.16.1

Fixed versioning issue. Can now determine version by typing:

import dsa
dsa.version

or

dsa.__version__

2024.08.16

moved Trie end_marker from an instance variable to a class variable (Trie.end_marker)

2024.08.15

dsa.draw

  • new module to provide optional NetworkX graphics to:
  • graphs
  • tries
  • trees
  • heaps

dsa module

ran code through RUFF

dsa.graphs module

  • Added vertices() method to AdjacencyListGraph, AdjacencyListWeightedGraph
  • Dropped Vertex classes

dsa.tree

renamed Node class to TreeNode

2024.7.23

dsa.graphs module

  • added is_edge() methods for AdjacencyMatrixGraph, AdjacencyMatrixWeightedGraph, AdjacencyListGraph, AdjacencyListWeightedGraph
  • added index operator (returns a list of adjacent labels) for AdjacencyMatrixGraph, AdjacencyMatrixWeightedGraph
  • cleaned up and refactored parameter names

2024.7.19

dsa.graphs module

  • Added AdjacencyMatrixGraph, AdjacencyMatrixWeightedGraph, AdjacencyListGraph, AdjacencyListWeightedGraph
  • Deprecated: Vertex, WeightedVertex

dsa.heap module

  • Removed MinHeap option from the Heap class
  • Added dedicated MinHeap class
  • Added Priority Queue class

dsa package

Misc. code improvements, documentation updates and API consistency

TODO

  • Make an abstract Graph class

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

ucxdsa-2025.1.17.tar.gz (258.3 kB view details)

Uploaded Source

Built Distribution

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

ucxdsa-2025.1.17-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

Details for the file ucxdsa-2025.1.17.tar.gz.

File metadata

  • Download URL: ucxdsa-2025.1.17.tar.gz
  • Upload date:
  • Size: 258.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.1

File hashes

Hashes for ucxdsa-2025.1.17.tar.gz
Algorithm Hash digest
SHA256 364fa557b0a290bf0fad334a6274d884b7702a53eed8c8db0acdeffceac813d2
MD5 7f6ceaeaaad31be253cd702c10604429
BLAKE2b-256 06156ef277ec5ef52d74b54a92cae67cca0b0731e331bf25c2ee7b7150771e91

See more details on using hashes here.

File details

Details for the file ucxdsa-2025.1.17-py3-none-any.whl.

File metadata

  • Download URL: ucxdsa-2025.1.17-py3-none-any.whl
  • Upload date:
  • Size: 30.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.1

File hashes

Hashes for ucxdsa-2025.1.17-py3-none-any.whl
Algorithm Hash digest
SHA256 8fa6c137f3798ae1cbf8b28b67119f98f1f34f31e716b9c9883572239b43f020
MD5 ae61ac5e916ae6c7d485dd833b47112a
BLAKE2b-256 5cd9ca2bdd82da7ccd1b72a5b584f21ef3f20a4499f5eafa5f55bd71d60206c3

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