def test_remove_at(self): n1 = Node(1) ll = Linkedlist() self.assertEqual(ll.remove_at(0), None) ll.insert_at(0, n1) n2 = Node(2) ll.insert_at(10, n2) n3 = Node(3) ll.insert_at(1, n3) self.assertEqual(ll.remove_at(2), n3) self.assertEqual(ll.remove_at(0), n1)
class Queue: def __init__(self): self.storage = Linkedlist() def enqueue(self, item): self.storage.add_to_tail(item) def dequeue(self): return self.storage.remove_head() def is_empty(self): return self.storage.head == None
class Stack: def __init__(self): self.storage = Linkedlist() def push(self, item): self.storage.add_to_head(item) def pop(self): return self.storage.remove_head() def isEmpty(self): return self.storage.head == None
def test_get_at(self): n = Node(1) ll = Linkedlist() ll.insert_at(0, n) self.assertEqual(ll.get_at(0), n) n = Node(2) ll.insert_at(10, n) self.assertEqual(ll.get_at(1), n)
def addbook(): if request.method == "GET": return render_template('index.html') elif request.method == "POST": key = request.form.get('key', 'book') author = request.form.get('author', None) description = request.form.get('desc', None) price = request.form.get('price', 0) # get the hash value hash_value = hashFunction(key) # once you get the hash value you can store the value in the data bucket checkspace = dataBucket[hash_value] if checkspace is None: link[hash_value] = Linkedlist() dataBucket[hash_value] = link[hash_value] link[hash_value].insertData(author, description, price) else: exist_link = checkspace # find the last node (no need to travers, just call the insertData() method) temp = checkspace.head while temp is not None: temp = temp.next exist_link.insertData(author, description, price) return 'done'
def test_iter(self): ll = Linkedlist() n1 = Node(1) ll.insert_at(0, n1) n2 = Node(2) ll.insert_at(10, n2) n3 = Node(3) ll.insert_at(1, n3) for node in ll: print node.data
from linkedlist import Linkedlist my_list = [None] * 10 link1 = Linkedlist() my_list.insert(0,link1) link1.insertData('abcd','good book',342) val = my_list[0] val.insertData('pqrs','bad book',455) print(my_list[0].findData()) link2 = Linkedlist() my_list.insert(1,link2) link2.insertData('gif','not good',111)
from linkedlist import Linkedlist def kth_to_last(head, k): n = head runner = head tmp = head for i in xrange(k): runner = tmp.next tmp = tmp.next while runner: n = n.next runner = runner.next return n l = Linkedlist() head = l.make([1, 1, 3, 5, 17, 9, 1, 23]) print kth_to_last(head, 5).value
def __init__(self): self.storage = Linkedlist()
def test_clear(self): n = Node(1) ll = Linkedlist() ll.insert_first(n) ll.clear() self.assertEqual(ll.get_first(), None)
def test_insert_first(self): n = Node(1) ll = Linkedlist() ll.insert_first(n) self.assertEqual(ll.head, n) self.assertEqual(ll.head.data, n.data)
def test_remove_last(self): n = Node(1) ll = Linkedlist() self.assertEqual(ll.remove_last(), None) ll.insert_last(n) self.assertEqual(ll.remove_last(), n) self.assertEqual(ll.size, 0) n = Node(2) ll.insert_last(n) n = Node(3) ll.insert_last(n) self.assertEqual(ll.remove_last(), n)
def test_get_last(self): n = Node(1) ll = Linkedlist() self.assertEqual(ll.get_last(), None) ll.insert_last(n) self.assertEqual(ll.get_last(), n)
def test_remove_first(self): n = Node(1) ll = Linkedlist() ll.insert_first(n) self.assertEqual(ll.remove_first(), n) self.assertEqual(ll.get_first(), None)
def setUp(self): self.ll = Linkedlist()
class TestLinkedlist(unittest.TestCase): def setUp(self): self.ll = Linkedlist() def test_add_first(self): self.ll.add_first(3) self.ll.add_first(4) self.ll.add_first(99) self.assertEqual(self.ll._expose(),'99-4-3') def test_add_at(self): self.ll.add_first(3) self.ll.add_first(4) self.ll.add_first(99) self.ll.add_at(1, 1) self.assertEqual(self.ll._expose(),'99-1-4-3') def test_add_at_empty(self): self.ll.add_at(3, 9999) self.assertEqual(self.ll._expose(), '3') def test_add_at_big_index(self): self.ll.add_first(3) self.ll.add_first(4) self.ll.add_at(99, 9999) self.assertEqual(self.ll._expose(), '4-3-99') def test_get_first(self): self.ll.add_first(3) self.assertEqual(self.ll.get_first(), 3) def test_get_at(self): self.ll.add_first(3) self.ll.add_first(4) self.ll.add_first(99) self.assertEqual(self.ll.get_at(1), 4) def test_get_at_empty(self): self.assertEqual(self.ll.get_at(99), None) def test_get_at_big_index(self): self.ll.add_first(3) self.assertEqual(self.ll.get_at(99), None) def test_remove_first(self): self.ll.add_first(3) self.ll.add_first(4) item = self.ll.remove_first() self.assertEqual(item, 4) self.assertEqual(self.ll._expose(), '3') def test_remove_at(self): self.ll.add_first(3) self.ll.add_first(4) self.ll.add_first(99) val = self.ll.remove_at(1) self.assertEqual(val, 4) self.assertEqual(self.ll._expose(), '99-3') def test_remove_at_empty(self): self.assertEqual(self.ll.remove_at(99), None) def test_remove_at_big_index(self): self.ll.add_first(3) self.assertEqual(self.ll.remove_at(99), None)