From 828a88cac3d693e9a4051f0835a9572853584d41 Mon Sep 17 00:00:00 2001 From: fcbhank Date: Thu, 30 May 2019 12:02:38 +0800 Subject: [PATCH 1/2] Add file fcbhank/RemoveElement.java by fcbhank --- .../RemoveElement/fcbhank/RemoveElement.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 src/main/java/RemoveElement/fcbhank/RemoveElement.java diff --git a/src/main/java/RemoveElement/fcbhank/RemoveElement.java b/src/main/java/RemoveElement/fcbhank/RemoveElement.java new file mode 100644 index 0000000..0995cb6 --- /dev/null +++ b/src/main/java/RemoveElement/fcbhank/RemoveElement.java @@ -0,0 +1,28 @@ +package RemoveElement.fcbhank; + +/** + * Create by fcbhank on 2019/5/30 + * 27. Remove Element + * 解题思路: + * 遍历数组,记录元素为val的个数为count。 + * 当前元素不为val时,其下标减去count即为数组去掉位于该元素前所有0后应处的位置,最后在末尾按count补全val。 + */ +public class RemoveElement { + public int removeElement(int[] nums, int val) { + int len = nums.length; + int i, count = 0; + for (i = 0; i < len; i++) { + if (nums[i] == val) + count++; + else + nums[i - count] = nums[i]; + } + for (i = len-count; i < len; i++) + nums[i] = val; + return len - count; + } +} +/* +Runtime: 0 ms, faster than 100.00% of Java online submissions for Remove Element. +Memory Usage: 34.7 MB, less than 100.00% of Java online submissions for Remove Element. + */ From f102d86523ccbba4c6fef5ff8b3eb1feef8525f9 Mon Sep 17 00:00:00 2001 From: fcbhank Date: Thu, 30 May 2019 12:05:25 +0800 Subject: [PATCH 2/2] fix annotation in file fcbhank/RemoveElement.java by fcbhank --- src/main/java/RemoveElement/fcbhank/RemoveElement.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/RemoveElement/fcbhank/RemoveElement.java b/src/main/java/RemoveElement/fcbhank/RemoveElement.java index 0995cb6..8356018 100644 --- a/src/main/java/RemoveElement/fcbhank/RemoveElement.java +++ b/src/main/java/RemoveElement/fcbhank/RemoveElement.java @@ -5,7 +5,7 @@ * 27. Remove Element * 解题思路: * 遍历数组,记录元素为val的个数为count。 - * 当前元素不为val时,其下标减去count即为数组去掉位于该元素前所有0后应处的位置,最后在末尾按count补全val。 + * 当前元素不为val时,其下标减去count即为数组去掉位于该元素前所有val后应处的位置,最后在末尾按count补全val。 */ public class RemoveElement { public int removeElement(int[] nums, int val) {