Skip to content

Commit 04083b2

Browse files
committed
Fix donnemartin#13, PEP8-ify notebooks.
1 parent 374d67f commit 04083b2

25 files changed

+210
-173
lines changed

linked_lists/add_reverse/add_reverse_challenge.ipynb

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
"source": [
3535
"## Constraints\n",
3636
"\n",
37-
3837
"* Do you expect the return to be in reverse order too?\n",
3938
" * Yes\n",
4039
"* What if one of the inputs is None?\n",
@@ -98,7 +97,7 @@
9897
"outputs": [],
9998
"source": [
10099
"class MyLinkedList(LinkedList):\n",
101-
" \n",
100+
"\n",
102101
" def add_reverse(self, first_list, second_list):\n",
103102
" # TODO: Implement me\n",
104103
" pass"
@@ -133,7 +132,7 @@
133132
"\n",
134133
"\n",
135134
"class TestAddReverse(object):\n",
136-
" \n",
135+
"\n",
137136
" def test_add_reverse(self):\n",
138137
" print('Test: Empty list(s)')\n",
139138
" assert_equal(MyLinkedList().add_reverse(None, None), None)\n",
@@ -166,13 +165,15 @@
166165
" second_list.append(7)\n",
167166
" result = MyLinkedList().add_reverse(first_list, second_list)\n",
168167
" assert_equal(result.get_all_data(), [5, 4, 2, 1])\n",
169-
" \n",
168+
"\n",
170169
" print('Success: test_add_reverse')\n",
171170
"\n",
171+
"\n",
172172
"def main():\n",
173173
" test = TestAddReverse()\n",
174174
" test.test_add_reverse()\n",
175175
"\n",
176+
"\n",
176177
"if __name__ == '__main__':\n",
177178
" main()"
178179
]

linked_lists/add_reverse/add_reverse_solution.ipynb

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@
3333
"source": [
3434
"## Constraints\n",
3535
"\n",
36-
3736
"* Do you expect the return to be in reverse order too?\n",
3837
" * Yes\n",
3938
"* What if one of the inputs is None?\n",
@@ -117,25 +116,26 @@
117116
"outputs": [],
118117
"source": [
119118
"class MyLinkedList(LinkedList):\n",
120-
" \n",
119+
"\n",
121120
" def __add_reverse__(self, first_node, second_node, carry):\n",
122121
" if type(carry) != int and carry < 0:\n",
123122
" raise ValueError('Invalid int argument: carry')\n",
124-
" \n",
123+
"\n",
125124
" # Base case\n",
126125
" if first_node is None and second_node is None and carry == 0:\n",
127126
" return None\n",
128-
" \n",
127+
"\n",
129128
" # Recursive case\n",
130129
" value = carry\n",
131130
" value += first_node.data if first_node is not None else 0\n",
132131
" value += second_node.data if second_node is not None else 0\n",
133132
" new_carry = 1 if value >= 10 else 0\n",
134133
" remainder = value % 10\n",
135134
" node = Node(remainder)\n",
136-
" node.next = self.__add_reverse__(first_node.next if first_node is not None else None, \n",
137-
" second_node.next if first_node is not None else None, \n",
138-
" new_carry)\n",
135+
" node.next = self.__add_reverse__(\n",
136+
" first_node.next if first_node is not None else None,\n",
137+
" second_node.next if first_node is not None else None,\n",
138+
" new_carry)\n",
139139
" return node\n",
140140
"\n",
141141
" def add_reverse(self, first_list, second_list):\n",
@@ -173,7 +173,7 @@
173173
"\n",
174174
"\n",
175175
"class TestAddReverse(object):\n",
176-
" \n",
176+
"\n",
177177
" def test_add_reverse(self):\n",
178178
" print('Test: Empty list(s)')\n",
179179
" assert_equal(MyLinkedList().add_reverse(None, None), None)\n",
@@ -206,13 +206,15 @@
206206
" second_list.append(7)\n",
207207
" result = MyLinkedList().add_reverse(first_list, second_list)\n",
208208
" assert_equal(result.get_all_data(), [5, 4, 2, 1])\n",
209-
" \n",
209+
"\n",
210210
" print('Success: test_add_reverse')\n",
211211
"\n",
212+
"\n",
212213
"def main():\n",
213214
" test = TestAddReverse()\n",
214215
" test.test_add_reverse()\n",
215216
"\n",
217+
"\n",
216218
"if __name__ == '__main__':\n",
217219
" main()"
218220
]

linked_lists/add_reverse/test_add_reverse.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
class TestAddReverse(object):
5-
5+
66
def test_add_reverse(self):
77
print('Test: Empty list(s)')
88
assert_equal(MyLinkedList().add_reverse(None, None), None)
@@ -35,12 +35,14 @@ def test_add_reverse(self):
3535
second_list.append(7)
3636
result = MyLinkedList().add_reverse(first_list, second_list)
3737
assert_equal(result.get_all_data(), [5, 4, 2, 1])
38-
38+
3939
print('Success: test_add_reverse')
4040

41+
4142
def main():
4243
test = TestAddReverse()
4344
test.test_add_reverse()
4445

46+
4547
if __name__ == '__main__':
4648
main()

linked_lists/delete_mid/delete_mid_challenge.ipynb

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
"source": [
3535
"## Constraints\n",
3636
"\n",
37-
3837
"* What if the final node is being deleted, for example a single node list? Do we make it a dummy with value None?\n",
3938
" * Yes\n",
4039
"* Can we assume we already have a linked list class that can be used for this problem?\n",
@@ -90,7 +89,7 @@
9089
"outputs": [],
9190
"source": [
9291
"class MyLinkedList(LinkedList):\n",
93-
" \n",
92+
"\n",
9493
" def delete_node(self, node):\n",
9594
" # TODO: Implement me\n",
9695
" pass"
@@ -125,7 +124,7 @@
125124
"\n",
126125
"\n",
127126
"class TestDeleteNode(object):\n",
128-
" \n",
127+
"\n",
129128
" def test_delete_node(self):\n",
130129
" print('Test: Empty list, null node to delete')\n",
131130
" linked_list = MyLinkedList(None)\n",
@@ -139,20 +138,22 @@
139138
" assert_equal(linked_list.get_all_data(), [None])\n",
140139
"\n",
141140
" print('Test: Multiple nodes')\n",
142-
" linked_list = MyLinkedList(None) \n",
141+
" linked_list = MyLinkedList(None)\n",
143142
" node0 = linked_list.insert_to_front(1)\n",
144143
" node1 = linked_list.insert_to_front(3)\n",
145144
" node2 = linked_list.insert_to_front(4)\n",
146145
" node3 = linked_list.insert_to_front(1)\n",
147146
" linked_list.delete_node(node2)\n",
148147
" assert_equal(linked_list.get_all_data(), [1, 3, 1])\n",
149-
" \n",
148+
"\n",
150149
" print('Success: test_delete_node')\n",
151150
"\n",
151+
"\n",
152152
"def main():\n",
153153
" test = TestDeleteNode()\n",
154154
" test.test_delete_node()\n",
155-
" \n",
155+
"\n",
156+
"\n",
156157
"if __name__ == '__main__':\n",
157158
" main()"
158159
]

linked_lists/delete_mid/delete_mid_solution.ipynb

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@
3333
"source": [
3434
"## Constraints\n",
3535
"\n",
36-
3736
"* What if the final node is being deleted, for example a single node list? Do we make it a dummy with value None?\n",
3837
" * Yes\n",
3938
"* Can we assume we already have a linked list class that can be used for this problem?\n",
@@ -95,7 +94,7 @@
9594
"outputs": [],
9695
"source": [
9796
"class MyLinkedList(LinkedList):\n",
98-
" \n",
97+
"\n",
9998
" def delete_node(self, node):\n",
10099
" if self.head is None:\n",
101100
" return\n",
@@ -138,7 +137,7 @@
138137
"\n",
139138
"\n",
140139
"class TestDeleteNode(object):\n",
141-
" \n",
140+
"\n",
142141
" def test_delete_node(self):\n",
143142
" print('Test: Empty list, null node to delete')\n",
144143
" linked_list = MyLinkedList(None)\n",
@@ -152,20 +151,22 @@
152151
" assert_equal(linked_list.get_all_data(), [None])\n",
153152
"\n",
154153
" print('Test: Multiple nodes')\n",
155-
" linked_list = MyLinkedList(None) \n",
154+
" linked_list = MyLinkedList(None)\n",
156155
" node0 = linked_list.insert_to_front(1)\n",
157156
" node1 = linked_list.insert_to_front(3)\n",
158157
" node2 = linked_list.insert_to_front(4)\n",
159158
" node3 = linked_list.insert_to_front(1)\n",
160159
" linked_list.delete_node(node2)\n",
161160
" assert_equal(linked_list.get_all_data(), [1, 3, 1])\n",
162-
" \n",
161+
"\n",
163162
" print('Success: test_delete_node')\n",
164163
"\n",
164+
"\n",
165165
"def main():\n",
166166
" test = TestDeleteNode()\n",
167167
" test.test_delete_node()\n",
168-
" \n",
168+
"\n",
169+
"\n",
169170
"if __name__ == '__main__':\n",
170171
" main()"
171172
]

linked_lists/delete_mid/test_delete_mid.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
class TestDeleteNode(object):
5-
5+
66
def test_delete_node(self):
77
print('Test: Empty list, null node to delete')
88
linked_list = MyLinkedList(None)
@@ -16,19 +16,21 @@ def test_delete_node(self):
1616
assert_equal(linked_list.get_all_data(), [None])
1717

1818
print('Test: Multiple nodes')
19-
linked_list = MyLinkedList(None)
19+
linked_list = MyLinkedList(None)
2020
node0 = linked_list.insert_to_front(1)
2121
node1 = linked_list.insert_to_front(3)
2222
node2 = linked_list.insert_to_front(4)
2323
node3 = linked_list.insert_to_front(1)
2424
linked_list.delete_node(node2)
2525
assert_equal(linked_list.get_all_data(), [1, 3, 1])
26-
26+
2727
print('Success: test_delete_node')
2828

29+
2930
def main():
3031
test = TestDeleteNode()
3132
test.test_delete_node()
32-
33+
34+
3335
if __name__ == '__main__':
3436
main()

linked_lists/find_loop_start/find_loop_start_challenge.ipynb

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
"source": [
3535
"## Constraints\n",
3636
"\n",
37-
3837
"* Is this a singly linked list?\n",
3938
" * Yes\n",
4039
"* Can we assume we are always passed a circular linked list?\n",
@@ -93,7 +92,7 @@
9392
"outputs": [],
9493
"source": [
9594
"class MyLinkedList(LinkedList):\n",
96-
" \n",
95+
"\n",
9796
" def find_loop_start(self):\n",
9897
" # TODO: Implement me\n",
9998
" pass"
@@ -128,25 +127,25 @@
128127
"\n",
129128
"\n",
130129
"class TestFindLoopStart(object):\n",
131-
" \n",
130+
"\n",
132131
" def test_find_loop_start(self):\n",
133132
" print('Test: Empty list')\n",
134133
" linked_list = MyLinkedList()\n",
135134
" assert_equal(linked_list.find_loop_start(), None)\n",
136-
" \n",
135+
"\n",
137136
" print('Test: Not a circular linked list: One element')\n",
138137
" head = Node(1)\n",
139138
" linked_list = MyLinkedList(head)\n",
140139
" assert_equal(linked_list.find_loop_start(), None)\n",
141-
" \n",
140+
"\n",
142141
" print('Test: Not a circular linked list: Two elements')\n",
143142
" linked_list.append(2)\n",
144143
" assert_equal(linked_list.find_loop_start(), None)\n",
145-
" \n",
144+
"\n",
146145
" print('Test: Not a circular linked list: Three or more elements')\n",
147146
" linked_list.append(3)\n",
148147
" assert_equal(linked_list.find_loop_start(), None)\n",
149-
" \n",
148+
"\n",
150149
" print('Test: General case: Circular linked list')\n",
151150
" node10 = Node(10)\n",
152151
" node9 = Node(9, node10)\n",
@@ -162,13 +161,15 @@
162161
" node10.next = node3\n",
163162
" linked_list = MyLinkedList(node0)\n",
164163
" assert_equal(linked_list.find_loop_start(), 3)\n",
165-
" \n",
164+
"\n",
166165
" print('Success: test_find_loop_start')\n",
167166
"\n",
167+
"\n",
168168
"def main():\n",
169169
" test = TestFindLoopStart()\n",
170170
" test.test_find_loop_start()\n",
171-
" \n",
171+
"\n",
172+
"\n",
172173
"if __name__ == '__main__':\n",
173174
" main()"
174175
]

0 commit comments

Comments
 (0)