From 59e33b8ecdb061ed7d4786084090b31cfc68a5b1 Mon Sep 17 00:00:00 2001 From: xuwu Date: Tue, 13 Apr 2021 21:48:01 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=AE=97=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- algorithm/README.md | 1 + algorithm/链表/reverseList.js | 27 +++++++++++++++++++++++++++ package.json | 3 ++- yarn.lock | 12 ++++++++++++ 4 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 algorithm/README.md create mode 100644 algorithm/链表/reverseList.js diff --git a/algorithm/README.md b/algorithm/README.md new file mode 100644 index 0000000..7c8eec6 --- /dev/null +++ b/algorithm/README.md @@ -0,0 +1 @@ +前端到底如何搞算法? \ No newline at end of file diff --git a/algorithm/链表/reverseList.js b/algorithm/链表/reverseList.js new file mode 100644 index 0000000..56e7089 --- /dev/null +++ b/algorithm/链表/reverseList.js @@ -0,0 +1,27 @@ +// 递归版 +var reverseList = function(head) { + const dummy = new ListNode() + return reverse(head, dummy).next +}; + +function reverse (head, dummy) { + if (!head) return dummy + const tmp = head.next + head.next = dummy.next + dummy.next = head + head = tmp + return reverse(head, dummy) +} + +// 迭代版 + +var reverseList = function(head) { + const dummy = new ListNode() + while (head) { + const tmp = head.next + head.next = dummy.next + dummy.next = head + head = tmp + } + return dummy.next +}; \ No newline at end of file diff --git a/package.json b/package.json index 7eb70a2..e3c9ba6 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ }, "homepage": "https://github.com/KieSun/fucking-frontend#readme", "dependencies": { - "axios": "^0.21.1" + "axios": "^0.21.1", + "gitment": "^0.0.3" } } diff --git a/yarn.lock b/yarn.lock index 8e149d7..fb26875 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13,3 +13,15 @@ follow-redirects@^1.10.0: version "1.13.3" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.13.3.tgz#e5598ad50174c1bc4e872301e82ac2cd97f90267" integrity sha512-DUgl6+HDzB0iEptNQEXLx/KhTmDb8tZUHSeLqpnjpknR70H0nC2t9N73BK6fN4hOvJ84pKlIQVQ4k5FFlBedKA== + +gitment@^0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/gitment/-/gitment-0.0.3.tgz#dbccbad7480b1345b656913bd70eff792a7b38b8" + integrity sha1-28y610gLE0W2VpE71w7/eSp7OLg= + dependencies: + mobx "^3.1.7" + +mobx@^3.1.7: + version "3.6.2" + resolved "https://registry.yarnpkg.com/mobx/-/mobx-3.6.2.tgz#fb9f5ff5090539a1ad54e75dc4c098b602693320" + integrity sha512-Dq3boJFLpZEvuh5a/MbHLUIyN9XobKWIb0dBfkNOJffNkE3vtuY0C9kSDVpfH8BB0BPkVw8g22qCv7d05LEhKg==