September 2017 Update

This commit is contained in:
Ingy döt Net 2017-09-23 10:01:46 +02:00
parent bba7bfd280
commit ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions

View file

@ -1,15 +1,16 @@
(function () {
// hanoi :: n -> s -> s -> s -> [[s, s]]
function hanoi(n, a, b, c) {
return n ? hanoi(n - 1, a, c, b).concat(
[[a, b]]
).concat(hanoi(n - 1, c, b, a)) : [];
}
return hanoi(3, 'left', 'right', 'mid')
.map(function (d) {
return d[0] + ' -> ' + d[1];
});
// hanoi :: Int -> String -> String -> String -> [[String, String]]
function hanoi(n, a, b, c) {
return n ? hanoi(n - 1, a, c, b)
.concat([
[a, b]
])
.concat(hanoi(n - 1, c, b, a)) : [];
}
return hanoi(3, 'left', 'right', 'mid')
.map(function (d) {
return d[0] + ' -> ' + d[1];
});
})();

View file

@ -0,0 +1,19 @@
(() => {
'use strict';
// hanoi :: Int -> String -> String -> String -> [[String, String]]
const hanoi = (n, a, b, c) =>
n ? hanoi(n - 1, a, c, b)
.concat([
[a, b]
])
.concat(hanoi(n - 1, c, b, a)) : [];
// show :: a -> String
const show = x => JSON.stringify(x, null, 2);
return show(
hanoi(3, 'left', 'right', 'mid')
.map(d => d[0] + ' -> ' + d[1])
);
})();