![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
CarterYang0
念念不忘,必有回响!
展开
-
LeetCode JAVA 206. 反转链表
//迭代法反转链表class Solution {//如果感觉不好理解你可以先假设链表只包含头节点自己一个节点 public ListNode reverseList(ListNode head) { ListNode pre=null;//指向前一个结点 ListNode cur=head;//指向当前结点 while(cur!=null){//当前节点非空 //修改当前节点的指向 ListNode原创 2020-05-25 20:07:37 · 140 阅读 · 0 评论 -
LeetCode JAVA 1. 两数之和
//朴素class Solution0 { public int[] twoSum(int[] nums, int target) { for(int i=0;i<nums.length-1;i++)//遍历左指针 for (int j=i+1;j<nums.length;j++)//遍历右指针 if(nums[i]+nums[j]==target)//判断是否满足条件 re原创 2020-05-25 12:59:57 · 239 阅读 · 0 评论 -
LeetCode JAVA 15. 三数之和
解题思路手动构造一个简陋的hash数组,来加速访问代码class Solution {//&操作就是选用的简陋的哈希算法 public int[] twoSum(int[] nums, int target) { int volume =4096; //100000000000 int bitMode = volume-1;//011111111111 int [] result =new int[volume];//简陋的散列数组原创 2020-05-21 20:06:40 · 144 阅读 · 0 评论 -
LeetCode JAVA 70. 爬楼梯
解题思路由于每次只能跨一阶或者两阶台阶,所以第n阶台阶只能由第n-1阶台阶跨一步或者由第n-2阶台阶跨两步到达代码class Solution { public int climbStairs(int n) {//n:第n阶台阶 if (n<4) return n; int a=2,b=3,t=5; for(int i=4;i<=n;i++){//i:到达第i阶台阶 t=a+b;//t:到达第i节台阶可能的方原创 2020-05-20 20:30:13 · 148 阅读 · 0 评论 -
LeetCode JAVA 283. 移动零
解题思路快慢双指针,快指针遍历数组,慢指针填充非0元素,快慢指针的产生来源于0的存在代码class Solution { public void moveZeroes(int[] n) { int j=0;//慢指针填充非0元素 for (int i=0;i<n.length;i++)//快指针走一步 if(n[i]!=0){//快指针发现了一个非0元素 n[j]=n[i];//把这个元素交给慢指针来原创 2020-05-19 21:00:59 · 188 阅读 · 0 评论 -
LeetCode JAVA 11. 盛最多水的容器
解题思路在双指针解法的基础上进行改进,每次移动指针多次直到找到更高的"棒子"代码class Solution { public int maxArea(int[] h) { int s=0,l=0,r=h.length-1;//s:面积,l:左指针下标,r:右指针下标 while(l<r){ int sl=h[l];//sl:存储当前左棒子高度标杆 int sr=h[r];//rl:存储当前有棒子高度标杆原创 2020-05-19 19:53:00 · 216 阅读 · 0 评论