Skip to content

Instantly share code, notes, and snippets.

View hiroshi-maybe's full-sized avatar

Hiroshi Kori hiroshi-maybe

  • San Jose, CA, United States
View GitHub Profile
@hiroshi-maybe
hiroshi-maybe / isSublist.js
Last active December 16, 2015 20:39
A function to check sublist.
var isSublist = function(a,b) {
var a_idx=0;
for(var b_idx=0; b_idx<b.length; b_idx+=1) {
if (a[a_idx]==b[b_idx]) {
if (a_idx==a.length-1) {
return true;
}
a_idx+=1 ;
}
}
@hiroshi-maybe
hiroshi-maybe / reverse.js
Created May 1, 2013 09:10
A function to reverse a list (loop: n/2, space: n).
var reverse = function (a) {
for (var i=0, arrayLen=a.length ; i<arrayLen/2; i+=1) {
var temp = a[arrayLen-i-1];
a[arrayLen-i-1] = a[i];
a[i] = temp;
}
return a;
};
@hiroshi-maybe
hiroshi-maybe / quine.hs
Created May 6, 2013 07:09
Minimum quine on Haskell.
main=putStr$q++show q;q="main=putStr$q++show q;q="
@hiroshi-maybe
hiroshi-maybe / object_literal_format.js
Last active December 27, 2015 20:09
Object literal format in Javascript.
// obj1 is much more human readable!
var obj1 = {
"a" : "value",
"bc" : "value",
"def" : "value"
}
var obj2 = {
"a" : "value",
@hiroshi-maybe
hiroshi-maybe / prime.js
Last active December 29, 2015 07:09
3 different implementations to get prime numbers in limited range.
// 71 ms for input:1000000
var prime_procedural = function(end) {
var i,j,n;
var sieve = [],
primes = [];
sieve[0]=false;
for(i=1; i<end+1; i+=1) {
sieve[i]=true;
@hiroshi-maybe
hiroshi-maybe / dijkstra.js
Created April 18, 2014 09:12
Implementation of `Dijkstra's algorithm` in JavaScript
var graph1 = {
vertex: ["1","2","3"],
edge: [,
/* vertex1, vertex2, weight */
["1", "2", 4],
["1", "3", 7],
["2", "3", 1]
]
},
graph2 = {
@hiroshi-maybe
hiroshi-maybe / hike.js
Last active August 29, 2015 14:01
Casual argument parser in JavaScript
"use strict";
/****** Library START ******/
var hike = function() {
var user_fn, i, len, rule_strs, rule_parsed,
rule = {}, /* arg length -> [arg name] */
_arguments = Array.prototype.slice.call(arguments);
user_fn = _arguments.pop();
@hiroshi-maybe
hiroshi-maybe / base_form.html
Created August 13, 2014 07:08
Base HTML using jQuery
<html>
<head>
<script type="text/javascript"
src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript" src="js/index.js"></script>
</body>
</html>
//include
//------------------------------------------
#include <vector>
#include <list>
#include <map>
#include <set>
#include <deque>
#include <stack>
#include <bitset>
#include <algorithm>
@hiroshi-maybe
hiroshi-maybe / timeout-seq.js
Last active August 29, 2015 14:23
Sequential timeouts by promises
// node --harmony timeout-seq.js
[3,5,10]
.map(function(sec) { return sec * 1000; })
.map(function(duration) {
return function task(resolve) {
setTimeout(function() {
console.log(duration);
resolve();
}, duration);