Skip to content

Instantly share code, notes, and snippets.

@dpapathanasiou
dpapathanasiou / reformat_csv.py
Last active Apr 21, 2022
A simple python script to reduce or reformat a csv file, producing a csv with a specific sub-set of columns, stripping out any undesired characters from the individual row values
View reformat_csv.py
'''
A simple python script to reduce or reformat a csv file, producing a
csv with a specific sub-set of columns, stripping out any undesired
characters from the individual row values.
'''
import csv
@dpapathanasiou
dpapathanasiou / simple_kv_service.py
Created Dec 2, 2020
A simple example of a key-value (kv) storage and lookup service, accessible over http/rest
View simple_kv_service.py
#!/usr/bin/env python3
"""
simple_kv_service.py
A simple example of a key-value (kv) storage and lookup service,
accessible over http/rest:
http://[host]:[port]/set?somekey=somevalue => assigns "somevalue" to "somekey"
http://[host]:[port]/get?key=somekey => looks up "somekey" and returns its value, if it exists
@dpapathanasiou
dpapathanasiou / .bash_aliases
Created Mar 15, 2020
Scripting the pdftk-java jar to work like the pdftk binary
View .bash_aliases
alias pdftk='$HOME/.pdftk.sh'
View breadth_first_search.py
#!/usr/bin/env python
"""
A breadth-first search implementation from:
"MIT Open CourseWare: Introduction to Algorithms"
Lecture 13: Breadth-First Search
https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-006-introduction-to-algorithms-fall-2011/lecture-videos/lecture-13-breadth-first-search-bfs/
View depth_first_search.py
#!/usr/bin/env python
"""
An iterative implementation of depth-first search from:
"Python Algorithms: Mastering Basic Algorithms in the Python Language"
by Magnus Lie Hetland
ISBN: 9781484200551
View sliding_window.py
#!/usr/bin/env python
"""
An implementation of the "sliding window" technique to find shortest matching subarrays, inspired by:
https://leetcode.com/problems/find-all-anagrams-in-a-string/discuss/92007/sliding-window-algorithm-template-to-solve-all-the-leetcode-substring-search-problem
"""
from sys import maxint
@dpapathanasiou
dpapathanasiou / bellman_ford.py
Created Apr 20, 2019
Bellman Ford Algorithm
View bellman_ford.py
#!/usr/bin/env python
"""
An implementation of the Bellman-Form algorithm from:
"Python Algorithms: Mastering Basic Algorithms in the Python Language"
by Magnus Lie Hetland
ISBN: 9781484200551
@dpapathanasiou
dpapathanasiou / breadth_first_search.py
Created Apr 2, 2019
Breadth-First Search in Python
View breadth_first_search.py
#!/usr/bin/env python
"""
A breadth-first search implementation from:
"Python Algorithms: Mastering Basic Algorithms in the Python Language"
by Magnus Lie Hetland
ISBN: 9781484200551
View quicksort.py
#!/usr/bin/env python
"""
An implementation in python, inspired by the version in "Learn You
a Haskell for Great Good!"
(http://learnyouahaskell.com/recursion#quick-sort)
"""
def quicksort (a):
@dpapathanasiou
dpapathanasiou / mergesort.py
Created Mar 25, 2019
Merge Sort in Python
View mergesort.py
#!/usr/bin/env python
"""
An implementation in python, inspired by the haskell version via
Cormen
(https://github.com/dpapathanasiou/algorithms-unlocked-haskell/blob/master/algorithms-for-sorting-and-searching/MergeSort.hs)
"""
def merge (a, b, c=[]):