Skip to content

Instantly share code, notes, and snippets.

View lapointexavier's full-sized avatar
🦀

Xavier lapointexavier

🦀
View GitHub Profile
@lapointexavier
lapointexavier / insertion_sort.py
Created July 3, 2014 04:58
Simple insertion sort algo
import operator as op
def insertion_sort(data, reverse=False):
order = op.gt
if reverse:
order = op.lt
for j in range(len(data)):
key = data[j]
@lapointexavier
lapointexavier / returnFirstNonNullOption.sc
Last active August 29, 2015 14:07
Returns first non-null element
/**
* Returns the first non null element
* @param opts List of Argot Option to select from
* @return Option[String] or null
*/
def getFirst(opts: List[Option[String]]) = opts.view.flatMap((o: Option[String])=>o).headOption
@lapointexavier
lapointexavier / quakeCountdownPumpkin
Created October 26, 2014 01:30
Quake Countdown Pumpkin project
#include <Wire.h>
#define BAUD (9600) /* Serial baud define */
#define _7SEG (0x38) /* I2C address for 7-Segment */
#define THERM (0x49) /* I2C address for digital thermometer */
#define EEP (0x50) /* I2C address for EEPROM */
#define RED (3) /* Red color pin of RGB LED */
#define GREEN (5) /* Green color pin of RGB LED */
#define BLUE (6) /* Blue color pin of RGB LED */
#define SPKOUT (9)
@lapointexavier
lapointexavier / vessel.py
Last active August 29, 2015 14:09
Vessel challenge
import re
import urllib2
import base64
def decode(data):
try:
return base64.decodestring(data)
except:
return data
@lapointexavier
lapointexavier / collatzconjecture.py
Last active August 29, 2015 14:11
Collatz Conjecture
import random
num_steps = 0
def collatz(term):
"""Recursively compute the Collatz conjecture for a Natural number
http://en.wikipedia.org/wiki/Collatz_conjecture
term:
A natural number > 1
"""
def availability(start, end, blocks):
"""Return a new list of tuples of ints, where those ints
represent the time ranges between start and end that
don't intersect with any blocks.
Keyword arguments:
start -- earliest start time we care about
end -- latest end time we care about
blocks -- list of tuples of ints that we wish to exclude
return -- list of tuples of ints
def availability(start, end, blocks):
"""Return a new list of tuples of ints, where those ints
represent the time ranges between start and end that
don't intersect with any blocks.
Keyword arguments:
start -- earliest start time we care about
end -- latest end time we care about
blocks -- list of tuples of ints that we wish to exclude
return -- list of tuples of ints
@lapointexavier
lapointexavier / findFactors.py
Last active August 29, 2015 14:19
Find Factors of a Number
import sys
import math
def find_factors(number):
factors = []
while number % 2 == 0:
factors.append(2)
number = number / 2
i = 3
@lapointexavier
lapointexavier / findPrimes.py
Created April 21, 2015 21:37
Find Primes Number within a certain limit using the sieve of eratosthenes
import sys
import math
def find_primes(max_number):
is_composite = range(0, max_number + 1)
for i in range(4, max_number, 2):
is_composite[i] = True
@lapointexavier
lapointexavier / facebook_status.py
Last active October 26, 2015 16:13
A dumb script that looks at the Fb api status endpoint
#!/usr/bin/env python
import time
import logging
import pync
import requests
log = logging.getLogger(__name__)
url = 'https://www.facebook.com/feeds/api_status.php'