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
aardvark | |
aardwolf | |
aaron | |
aback | |
abacus | |
abaft | |
abalone | |
abandon | |
abandoned | |
abandonment |
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
function bit_test(num,bit){ | |
return ((num>>bit) % 2 != 0) | |
} | |
function bit_set(num,bit){ | |
return num | 1<<bit; | |
} | |
function bit_clear(num,bit){ | |
return num & ~(1<<bit); |
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
Array.prototype.shuffle = function(){ | |
var x = this.slice(), y = []; | |
while(x.length){y.push(x.splice(Math.floor(Math.random()*x.length),1)[0]);} | |
return y; | |
} |
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
/* | |
Towers of Hanoi | |
(non-recursive solution) | |
https://blog.svpino.com/2015/06/07/programming-challenge-towers-of-hanoi | |
*/ | |
function solveHanoi(discs){ | |
var towers = {a:[],b:[],c:[]}; |
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
/* | |
Solution to | |
https://blog.svpino.com/2015/05/24/programming-challenge-the-position-of-the-element | |
*/ | |
function posOfEl(list,el){ | |
// if the element exist return the index | |
var index = list.indexOf(el); | |
if(index>=0){return index;} | |
// otherwise insert it in a copy |
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
/* | |
Solution to: | |
https://blog.svpino.com/2015/05/17/programming-challenge-merging-overlapping-intervals | |
*/ | |
function combineOverlappingIntervals(intervals){ | |
var overlapping = [], newOnes = []; | |
// Compare each interval with every other interval |
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
/* | |
jQuery.collides plugin: collides | |
- simple collisionDetection | |
© 2014 Thomas Frank, v 0.7b | |
Check if one or more objects (DOM elments) collides | |
with one or more other objects (DOM elements) | |
If object collides the callbackFunc will be triggered. |
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
/* | |
A deep copier for JavaScript | |
that can handle circular references, | |
copies objects with correct prototypes, | |
copies functions (rather than referencing them), | |
copies non-enumerable properties | |
and copies HTML- and jQuery-elements as references | |
*/ | |
function deepCopy(obj){ |
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
/* | |
Five Programming Problems | |
a software developer should be able | |
to solve in less than an hour | |
https://blog.svpino.com/2015/05/07/five-programming-problems-every-software-engineer-should-be-able-to-solve-in-less-than-1-hour | |
Thomas Frank, Solutions in JS, time taken: | |
45 minutes (almost all time spent on problem 4 and 5) | |
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
// A minimal polyfill for Object.assign | |
// (an ES6 feature) | |
Object.assign = Object.assign || function(){ | |
for(var i = 1; i < arguments.length; i++){ | |
for(var j in arguments[i]){ | |
arguments[0][j] = arguments[i][j]; | |
} | |
} | |
}; |