From 76531ba9d98d89e100868917e4866f6f201656b9 Mon Sep 17 00:00:00 2001 From: vjudge Date: Sun, 23 Jun 2019 20:42:14 +0800 Subject: [PATCH 1/3] add 169 --- ...26\351\200\235\346\260\264\346\265\201.js" | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 "problems/0169_Majority_Element/26\351\200\235\346\260\264\346\265\201.js" diff --git "a/problems/0169_Majority_Element/26\351\200\235\346\260\264\346\265\201.js" "b/problems/0169_Majority_Element/26\351\200\235\346\260\264\346\265\201.js" new file mode 100644 index 00000000..4c5e3bab --- /dev/null +++ "b/problems/0169_Majority_Element/26\351\200\235\346\260\264\346\265\201.js" @@ -0,0 +1,24 @@ +/** + * @param {number[]} nums + * @return {number} + */ +var majorityElement = function(nums) { + let mergeNums = {} + nums.forEach(num => { + if (!mergeNums[num]) { + mergeNums[num] = 1 + } else { + mergeNums[num] += 1 + } + }) + let result = nums[0] + for(let key in mergeNums) { + if (mergeNums[result] < mergeNums[key]) { + result = key + } + } + return result +} + +console.log(majorityElement([3, 2, 3])) +console.log(majorityElement([2,2,1,1,1,2,2])) From ed07270d52ed92a8593bd57d4207dc5566e74b5f Mon Sep 17 00:00:00 2001 From: vjudge Date: Sat, 6 Jul 2019 18:16:01 +0800 Subject: [PATCH 2/3] add 26 --- ...26\351\200\235\346\260\264\346\265\201.js" | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 "problems/0066_Plus_One/26\351\200\235\346\260\264\346\265\201.js" diff --git "a/problems/0066_Plus_One/26\351\200\235\346\260\264\346\265\201.js" "b/problems/0066_Plus_One/26\351\200\235\346\260\264\346\265\201.js" new file mode 100644 index 00000000..f989627f --- /dev/null +++ "b/problems/0066_Plus_One/26\351\200\235\346\260\264\346\265\201.js" @@ -0,0 +1,33 @@ +/** + * @param {number[]} digits + * @return {number[]} + */ +// 战胜34.22% +var plusOne = function(digits) { + if (!digits || digits.length === 0) { + return [1] + } + let total = digits.length + let flag = 0 + let midRst = digits[total - 1] + 1 + while (total > 0) { + midRst = midRst + flag + digits[total - 1] = midRst % 10 + flag = 1 + total -- + if (midRst < 10) { + flag = 0 + break + } + midRst = digits[total - 1] + } + if (flag) { + digits.unshift(1) + } + return digits +}; + +console.log(plusOne([1, 2, 3])) +console.log(plusOne([4, 3, 2, 1])) +console.log(plusOne([1, 5, 9, 9])) +console.log(plusOne([9, 9, 9, 9, 9])) From 4b20a533292d3d331aef2ed800f8b5eeb1c5d28b Mon Sep 17 00:00:00 2001 From: vjudge Date: Sat, 6 Jul 2019 18:16:48 +0800 Subject: [PATCH 3/3] add 58 --- ...26\351\200\235\346\260\264\346\265\201.js" | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 "problems/0058_Length_of_Last_Word/26\351\200\235\346\260\264\346\265\201.js" diff --git "a/problems/0058_Length_of_Last_Word/26\351\200\235\346\260\264\346\265\201.js" "b/problems/0058_Length_of_Last_Word/26\351\200\235\346\260\264\346\265\201.js" new file mode 100644 index 00000000..60e5e920 --- /dev/null +++ "b/problems/0058_Length_of_Last_Word/26\351\200\235\346\260\264\346\265\201.js" @@ -0,0 +1,25 @@ +/** + * @param {string} s + * @return {number} + */ +// 战胜85.26% +var lengthOfLastWord = function(s) { + if (!s || s.length === 0) { + return 0 + } + let result = 0 + let total = s.length + while (total) { + if (s[total - 1] != ' ') { + result ++ + } else if (result !== 0) { + break + } + total -- + } + return result +} + +console.log(lengthOfLastWord('Hello World')) +console.log(lengthOfLastWord(' ')) +console.log(lengthOfLastWord('Hello World '))