Skip to content

Instantly share code, notes, and snippets.

View derka6391's full-sized avatar

Ammar derka6391

View GitHub Profile
@derka6391
derka6391 / guess-a-css-property-vue.markdown
Created June 2, 2019 19:46
Guess a CSS property (Vue)
@derka6391
derka6391 / index.html
Created June 2, 2019 19:37
vue-highcharts demo - Use Highmaps
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/highcharts@6/highmaps.js"></script>
<script src="https://code.highcharts.com/mapdata/custom/europe.js"></script>
<!-- vue-highcharts should be load after Highmaps -->
<script src="https://cdn.jsdelivr.net/npm/vue-highcharts/dist/vue-highcharts.min.js"></script>
<div id="app">
<highmaps :options="options"></highmaps>
</div>
@derka6391
derka6391 / Zybook_4_22_5.py
Created March 23, 2019 20:22
Figure 4.22.1: The ArrayList class using a List as the internal array.
class ArrayList:
def __init__(self, initial_allocation_size = 10):
self.allocation_size = allocation_size
self.length = 0
self.array = [None] * initial_allocation_size
@derka6391
derka6391 / Zybook_4_13_5.py
Created March 23, 2019 20:14
Figure 4.13.2: Insertion sort algorithm for singly-linked lists.
def insertion_sort_singly_linked(self):
before_current = self.head
current_node = self.head.next
while current_node != None:
next_node = current_node.next
position = self.find_insertion_position(current_node.data)
if position == before_current:
before_current = current_node
else:
self.remove_after(before_current)
@derka6391
derka6391 / Zybook_4_13_3.py
Created March 23, 2019 20:13
Figure 4.13.1: Insertion sort algorithm for doubly-linked lists.
def insertion_sort_doubly_linked(self):
current_node = self.head.next
while current_node != None:
next_node = current_node.next
search_node = current_node.prev
while ((search_node != None) and
(search_node.data > current_node.data)):
search_node = search_node.prev
@derka6391
derka6391 / Zybook_4_11_2.py
Created March 23, 2019 20:11
Figure 4.11.2: Reverse traversal algorithm.
ListTraverseReverse(list) {
curNode = list->tail // Start at tail
while (curNode is not null) {
Print curNode's data
curNode = curNode->prev
}
}
@derka6391
derka6391 / Zybook_4_11_1.py
Created March 23, 2019 20:10
Figure 4.11.1: Linked list traversal algorithm.
ListTraverse(list) {
curNode = list->head // Start at head
while (curNode is not null) {
Print curNode's data
curNode = curNode->next
}
}
@derka6391
derka6391 / Zybook_4_10_7.py
Created March 23, 2019 20:09
Figure 4.10.6: LinkedList remove() method using doubly-linked nodes.
def remove(self, current_node):
successor_node = current_node.next
predecessor_node = current_node.prev
if successor_node is not None:
successor_node.prev = predecessor_node
if predecessor_node is not None:
predecessor_node.next = successor_node
@derka6391
derka6391 / Zybook_4_10_6.py
Created March 23, 2019 20:08
Figure 4.10.5: LinkedList insert_after() method using doubly-linked nodes.
def insert_after(self, current_node, new_node):
if self.head is None:
self.head = new_node
self.tail = new_node
elif current_node is self.tail:
self.tail.next = new_node
new_node.prev = self.tail
self.tail = new_node
else:
successor_node = current_node.next
@derka6391
derka6391 / Zybook_4_10_5.py
Created March 23, 2019 20:07
Figure 4.10.4: LinkedList prepend() method using doubly-linked nodes.
def prepend(self, new_node):
if self.head == None:
self.head = new_node
self.tail = new_node
else:
new_node.next = self.head
self.head.prev = new_node
self.head = new_node