Rename file, add citation for Oregon State

This commit is contained in:
Andrew Scott 2022-06-25 13:48:31 -04:00
parent 78138056b6
commit 2e9ded5fcf
Signed by: a
GPG key ID: 3EB62D0BBB8DB381

View file

@ -1,13 +1,8 @@
# Course: CS261 - Data Structures ############## Provided by Oregon State University ###############
# Assignment: 6
# Description: Provided data structures necessary to complete the assignment.
# Please look through this file carefully to see what methods
# are available and how they're implemented.
# Don't modify the contents of this file.
# -------------- Used by both HashMaps (SC & OA) -------------- # # -------------- Used by both HashMaps (SC & OA) -------------- #
class DynamicArrayException(Exception): class DynamicArrayException(Exception):
pass pass
@ -98,6 +93,7 @@ def hash_function_2(key: str) -> int:
# --------- For use in Separate Chaining (SC) HashMap --------- # # --------- For use in Separate Chaining (SC) HashMap --------- #
class SLNode: class SLNode:
""" """
Singly Linked List node for use in a hash map Singly Linked List node for use in a hash map
@ -111,7 +107,7 @@ class SLNode:
def __str__(self) -> str: def __str__(self) -> str:
"""Override string method to provide more readable output.""" """Override string method to provide more readable output."""
return '(' + str(self.key) + ': ' + str(self.value) + ')' return "(" + str(self.key) + ": " + str(self.value) + ")"
class LinkedListIterator: class LinkedListIterator:
@ -160,9 +156,9 @@ class LinkedList:
content = str(self._head) content = str(self._head)
node = self._head.next node = self._head.next
while node: while node:
content += ' -> ' + str(node) content += " -> " + str(node)
node = node.next node = node.next
return 'SLL [' + content + ']' return "SLL [" + content + "]"
def __iter__(self) -> LinkedListIterator: def __iter__(self) -> LinkedListIterator:
"""Return an iterator for the list, starting at the head.""" """Return an iterator for the list, starting at the head."""
@ -208,8 +204,8 @@ class LinkedList:
# ---------- For use in Open Addressing (OA) HashMap ---------- # # ---------- For use in Open Addressing (OA) HashMap ---------- #
class HashEntry:
class HashEntry:
def __init__(self, key: str, value: object) -> None: def __init__(self, key: str, value: object) -> None:
"""Initialize an entry for use in a hash map.""" """Initialize an entry for use in a hash map."""
self.key = key self.key = key