Instantly share code, notes, and snippets.

# Martin Thoma MartinThoma

Created May 16, 2012 20:36
Counting Sort implemenatation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #!/usr/bin/python # -*- coding: utf-8 -*- def countingSort(A, k): """ Implementation of counting sort. @param A: the list of integers which should get sorted. No element should be smaller than 1 @param k: the highest number in A """
Created May 20, 2012 17:10
Sum of digits as hash
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #!/usr/bin/python # -*- coding: utf-8 -*- from math import log, ceil import matplotlib.pyplot as plt import numpy as np import matplotlib.mlab as mlab try:
Created June 17, 2012 09:40
How multiplication works
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #!/usr/bin/python # -*- coding: utf-8 -*- """ How multiplication works """ def simple(a, b): """ Multiplication you've learned at school """ additions = 0 multiplications = 0 product = 0
Created June 17, 2012 10:04
Create a random graph
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #include #include #include #include #include #include #include #define DIRECTED true #define MULTIPLE_EDGES false
Created June 30, 2012 13:23
Python implementation of QuickSort for testing purposes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #!/usr/bin/python # -*- coding: utf-8 -*- comparisons = 0 switches = 0 calls = 0 def read(filename): lines = open(filename, 'r').read().splitlines() return map(int, lines)
Created July 2, 2012 19:56
Cholesky-Zerlegung in Wikipedia oldid=104368978
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #!/usr/bin/python # -*- coding: utf-8 -*- def choleskyDecomposition(A): """ @param A: a nested list which represents a symmetric, positiv definit n x n matrix. @return: False if it didn't work, otherwise the matrix G """ n = len(A)
Created July 2, 2012 20:57
Implementation of the algorithm of Banachiewicz for Cholesky-Decomposition
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #!/usr/bin/python # -*- coding: utf-8 -*- def choleskyBanachiewicz(A): """ @param A: a nested list which represents a symmetric, positiv definit n x n matrix. @return: False if it didn't work, otherwise the matrix G """ n = len(A)
Created July 3, 2012 15:09
Takes a number and a number of bits and returns a True-False representation of the number with bits bits.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #!/usr/bin/python # -*- coding: utf-8 -*- def getBinary(number, bits): """ Takes a number and a number of bits and returns a True-False representation of the number with bits bits. @param number: The number you want to convert @param bits: The number of bits @return a list of True / False values """
Created July 22, 2012 13:30 — forked from teepark/btree.py
a pure-python B tree implementation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 import bisect import itertools import operator class _BNode(object): __slots__ = ["tree", "contents", "children"] def __init__(self, tree, contents=None, children=None): self.tree = tree self.contents = contents or []
Created August 2, 2012 10:05
Test how fast multiplication and addition is.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
 #!/usr/bin/python # -*- coding: utf-8 -*- """ This script shows that addition and multiplication is similar in terms of execution speed. """ import random, datetime