mirror of
https://github.com/TheAlgorithms/Python.git
synced 2025-03-20 13:39:48 +00:00
data_structures/linked_list: Add __len__() function and tests (#2047)
* Update __init__.py please add a function to get length of linked list * Update __init__.py * Update doubly_linked_list.py all size function lo doubly linked list class * prime number _better method * comments * Updated init.py 2 made it more pythonic * updated length function * commnet in linked_list construtor * Update data_structures/linked_list/__init__.py accepecting changes Co-authored-by: Christian Clauss <cclauss@me.com> * Update data_structures/linked_list/__init__.py Co-authored-by: Christian Clauss <cclauss@me.com> * Update __init__.py * Revert changes to doubly_linked_list.py * Revert changes to prime_check.py Co-authored-by: Christian Clauss <cclauss@me.com>
This commit is contained in:
parent
1e8fe8efcf
commit
321b1425e3
@ -7,9 +7,11 @@ class Node:
|
|||||||
class LinkedList:
|
class LinkedList:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.head = None
|
self.head = None
|
||||||
|
self.size = 0
|
||||||
|
|
||||||
def add(self, item):
|
def add(self, item):
|
||||||
self.head = Node(item, self.head)
|
self.head = Node(item, self.head)
|
||||||
|
self.size += 1
|
||||||
|
|
||||||
def remove(self):
|
def remove(self):
|
||||||
if self.is_empty():
|
if self.is_empty():
|
||||||
@ -17,7 +19,28 @@ class LinkedList:
|
|||||||
else:
|
else:
|
||||||
item = self.head.item
|
item = self.head.item
|
||||||
self.head = self.head.next
|
self.head = self.head.next
|
||||||
|
self.size -= 1
|
||||||
return item
|
return item
|
||||||
|
|
||||||
def is_empty(self):
|
def is_empty(self):
|
||||||
return self.head is None
|
return self.head is None
|
||||||
|
|
||||||
|
def __len__(self):
|
||||||
|
"""
|
||||||
|
>>> linked_list = LinkedList()
|
||||||
|
>>> len(linked_list)
|
||||||
|
0
|
||||||
|
>>> linked_list.add("a")
|
||||||
|
>>> len(linked_list)
|
||||||
|
1
|
||||||
|
>>> linked_list.add("b")
|
||||||
|
>>> len(linked_list)
|
||||||
|
2
|
||||||
|
>>> _ = linked_list.remove()
|
||||||
|
>>> len(linked_list)
|
||||||
|
1
|
||||||
|
>>> _ = linked_list.remove()
|
||||||
|
>>> len(linked_list)
|
||||||
|
0
|
||||||
|
"""
|
||||||
|
return self.size
|
||||||
|
Loading…
x
Reference in New Issue
Block a user