class Matrix(object):
def __init__(self, rows=1, cols=1):
self.rows = rows
self.cols = cols
self.data = [0] * rows * cols
def __str__(self):
return str(self.data)
def __getitem__(self, pair): # odczyt m[i, j]
i, j = pair
return self.data[i * self.cols + j]
def __setitem__(self, pair, value): # m[i, j] = value
i, j = pair
self.data[i * self.cols + j] = value
class Matrix(dict):
def __init__(self):
self.data = dict()
def __str__(self):
return str(self.data)
def __getitem__(self, pair): # odczyt m[i, j]
return self.data[pair]
def __setitem__(self, pair, value): # m[i, j] = value
self.data[pair] = value
class Quat:
def __init__(self, a=0, b=0, c=0, d=0):
self.q = [float(a), float(b), float(c), float(d)]
class F:
m = 5 # liczba pierwsza, parametr
# Przykład.
# F(2) + F(4) zwraca F(1).
# F(2) * F(4) zwraca F(3).
class Node:
def __init__(self, data=None, left=None, right=None, parent=None):
self.data = data
self.left = left
self.right = right
self.parent = parent
def __str__(self):
return str(self.data)
class Node:
def __init__(self, data=None, left=None, right=None, parent=None):
self.data = data
self.left_child = left
self.right_sibling = right
self.parent = parent
def __str__(self):
return str(self.data)
def heap_parent(n): return (n-1) / 3 def heap_left(n): return (3 * n + 1) def heap_middle(n): return (3 * n + 2) def heap_right(n): return (3 * n + 3)