随笔分类 - 典型算法题-数组
摘要:1、题目描述 33. 搜索旋转排序数组 2、思路: 数组经过旋转后,还是部分有序,还是用二分法,找到数组的mid,然后看到底是前半段有序,还是后半段有序,因为只要这半段是有序的,就可以用target去比较这半段的起点和这半段的终点,来判断target是否是在这半段中。就可以知道到底该往哪个方向缩小范
阅读全文
摘要:11. 盛最多水的容器 class Solution { public int maxArea(int[] height) { if (height == null || height.length == 0) { return 0; } int start = 0; int end = heigh
阅读全文
摘要:15. 数组中的第K个最大元素 package 数组; import jdk.nashorn.internal.ir.CallNode; import java.util.Random; public class 数组中的第k大元数 { public static void main(String[
阅读全文
摘要:4. 寻找两个正序数组的中位数 package 数组; public class 找两个正序数组的中位数找第k小的数 { public static void main(String[] args) { // int[] a = {1, 3, 4, 9};//长度为4 // int[] b = {1
阅读全文
摘要:https://leetcode-cn.com/problems/3sum/ package 数组; import java.util.Arrays; import java.util.HashMap; public class 两数之和 { public static void main(Stri
阅读全文
摘要:https://leetcode-cn.com/problems/3sum/ 思路: 方法一:数组排序后,三重暴力循环,排序的目的是一种方便获得不重复解的手段 方法二:数组排序后,利用双指针,因为数组排序后,元素有小到大,便于和0进行比较; package 数组; import java.util.
阅读全文