双指针
去码头整点儿代码
这个作者很懒,什么都没留下…
展开
-
leetcode-457环形数组是否存在循环
public class CircularArrayLoop { public boolean circularArrayLoop(int[] nums) { Set<Integer> set = new HashSet<>(); boolean flag; for (int i = 0; i < nums.length; i++) { int j = i; flag = (原创 2021-11-10 16:16:04 · 106 阅读 · 0 评论 -
压缩字符串leetcode-443
class Solution { public int compress(char[] chars) { int i = -1; int j = 0; while (j < chars.length) { int k = j; while (k < chars.length && chars[k] == chars[j]) { k++;原创 2021-11-10 15:24:27 · 4590 阅读 · 0 评论 -
寻找重复数leetcode-287
class Solution { public int findDuplicate(int[] nums) { int start = 0; int end = nums.length - 1; while (start < end) { int mid = (start + end) / 2; int count = 0; for (int i = 0; i < n原创 2021-11-10 14:26:35 · 3623 阅读 · 0 评论 -
leetcode-189轮转数组
class Solution { public void rotate(int[] nums, int k) { int position = 0; int circle = 0; int[] tmpNums = new int[nums.length]; for (int i = 0; i < nums.length; i++) { tmpNums[i] = nums[i]; }原创 2021-11-10 11:28:32 · 135 阅读 · 0 评论 -
leetcode-165
public class CompareVersion { public int compareVersion(String version1, String version2) { String[] stringArray = version1.split("\\."); String[] stringArray2 = version2.split("\\."); for (int i = 0, j = 0; i < stringArray.原创 2021-11-10 11:01:18 · 5172 阅读 · 0 评论 -
删除排序链表中的重复元素 II leetcode-82
public ListNode deleteDuplicates(ListNode head) { if (head == null) { return null; } ListNode p = new ListNode(); p.next = head; ListNode result = p; while (p.next != null) {原创 2021-11-10 00:20:24 · 220 阅读 · 0 评论 -
删除有序数组的重复项II
public class RemoveDuplicates { public int removeDuplicates(int[] nums) { int i = 0; int j = 0; int length = nums.length; while (i < length) { while (j < length && nums[j] == nums[i]) {原创 2021-11-09 21:08:46 · 47 阅读 · 0 评论 -
旋转链表leetcode-61
/** * 旋转链表leetcode-61 */public class RotateRight { public ListNode rotateRight(ListNode head, int k) { if (head == null) { return null; } ListNode p = head; ListNode q = head; int nodeNum = 1;原创 2021-11-09 20:40:12 · 213 阅读 · 0 评论 -
下一个排列leetcode-31
public class NextPermutation { public void nextPermutation(int[] nums) { int i; for (i = nums.length - 1; i > 0; i--) { if (nums[i] > nums[i - 1]) { int j = nums.length - 1; while (nums[原创 2021-11-09 20:23:26 · 63 阅读 · 0 评论 -
四数之和leetcode-18
public class FourSum { public List<List<Integer>> fourSum(int[] nums, int target) { for (int i = 0; i < nums.length - 1; i++) { for (int j = nums.length - 1; j > i; j--) { if (nums[j] < nums[j -原创 2021-11-09 17:27:55 · 78 阅读 · 0 评论 -
盛水最多的容器leetcode-11
public class MaxArea { public int maxArea(int[] height) { int sum = 0; for (int i = 0, j = height.length - 1; i < j;) { if (sum < Math.min(height[i], height[j]) * (j - i)) { sum = Math.min(height[i], he原创 2021-11-09 16:36:24 · 554 阅读 · 0 评论