From 59f245dda7cd33d0f00f8073e84659c07e257836 Mon Sep 17 00:00:00 2001 From: wu xiangkai Date: Thu, 23 Oct 2025 10:33:53 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=8F=8C=E6=8C=87=E9=92=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 26.remove-duplicates-from-sorted-array.java | 24 +++++++++++++++++ 27.remove-element.java | 21 +++++++++++++++ ...x-of-the-first-occurrence-in-a-string.java | 24 +++++++++++++++++ ...emove-duplicates-from-sorted-array-ii.java | 26 +++++++++++++++++++ 4 files changed, 95 insertions(+) create mode 100644 26.remove-duplicates-from-sorted-array.java create mode 100644 27.remove-element.java create mode 100644 28.find-the-index-of-the-first-occurrence-in-a-string.java create mode 100644 80.remove-duplicates-from-sorted-array-ii.java diff --git a/26.remove-duplicates-from-sorted-array.java b/26.remove-duplicates-from-sorted-array.java new file mode 100644 index 0000000..39c8a7d --- /dev/null +++ b/26.remove-duplicates-from-sorted-array.java @@ -0,0 +1,24 @@ +/* + * @lc app=leetcode id=26 lang=java + * + * [26] Remove Duplicates from Sorted Array + */ + +// @lc code=start +class Solution { + public int removeDuplicates(int[] nums) { + if(nums.length == 0) { + return 0; + } + int i = 0; + for(int j = 0; j< nums.length; j++) { + if(nums[j] != nums[i]) { + i++; + nums[i] = nums[j]; + } + } + return i+1; + } +} +// @lc code=end + diff --git a/27.remove-element.java b/27.remove-element.java new file mode 100644 index 0000000..a0d8079 --- /dev/null +++ b/27.remove-element.java @@ -0,0 +1,21 @@ +/* + * @lc app=leetcode id=27 lang=java + * + * [27] Remove Element + */ + +// @lc code=start +class Solution { + public int removeElement(int[] nums, int val) { + int i = 0; + for(int j = 0; j < nums.length; j++) { + if(nums[j] != val) { + nums[i] = nums[j]; + i++; + } + } + return i; + } +} +// @lc code=end + diff --git a/28.find-the-index-of-the-first-occurrence-in-a-string.java b/28.find-the-index-of-the-first-occurrence-in-a-string.java new file mode 100644 index 0000000..a69dbc8 --- /dev/null +++ b/28.find-the-index-of-the-first-occurrence-in-a-string.java @@ -0,0 +1,24 @@ +/* + * @lc app=leetcode id=28 lang=java + * + * [28] Find the Index of the First Occurrence in a String + */ + +// @lc code=start +class Solution { + public int strStr(String haystack, String needle) { + int idx = -1; + if(haystack.length() < needle.length()) { + return idx; + } + for(int i = 0; i < haystack.length(); i++) { + if(i + needle.length() <= haystack.length() && haystack.substring(i, i + needle.length()).equals(needle)) { + idx = i; + break; + } + } + return idx; + } +} +// @lc code=end + diff --git a/80.remove-duplicates-from-sorted-array-ii.java b/80.remove-duplicates-from-sorted-array-ii.java new file mode 100644 index 0000000..9e9c053 --- /dev/null +++ b/80.remove-duplicates-from-sorted-array-ii.java @@ -0,0 +1,26 @@ +/* + * @lc app=leetcode id=80 lang=java + * + * [80] Remove Duplicates from Sorted Array II + */ + +// @lc code=start +class Solution { + public int removeDuplicates(int[] nums) { + int i = -1, freq = 0; + for(int j = 0; j< nums.length; j++) { + if(i<0 || nums[i] == nums[j] && freq < 2) { + i++; + nums[i] = nums[j]; + freq++; + } else if(nums[i] != nums[j]) { + freq = 1; + i++; + nums[i] = nums[j]; + } + } + return i+1; + } +} +// @lc code=end +