September 2017 Update
This commit is contained in:
parent
bba7bfd280
commit
ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions
|
|
@ -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];
|
||||
});
|
||||
})();
|
||||
|
|
|
|||
19
Task/Towers-of-Hanoi/JavaScript/towers-of-hanoi-4.js
Normal file
19
Task/Towers-of-Hanoi/JavaScript/towers-of-hanoi-4.js
Normal 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])
|
||||
);
|
||||
})();
|
||||
Loading…
Add table
Add a link
Reference in a new issue