###题目描述 输入一个链表,输出该链表中倒数第k个结点。 ###代码示例 //双指针,两个指针指向头结点,一个指针先走K步,然后两个指针一直向前移动 //直到先走的指针指向链表末尾,后走的指针指向的节点即为倒数第K个节点 public class Offer15 { public static v ...
分类:
其他好文 时间:
2020-06-20 00:40:18
阅读次数:
54
3.无重复字符的最长子串。给定一个字符串,要求求出无重复字符子串中的最大长度。值得注意的是,字符长度可以为0。 解题方法为滑动窗口。从字符串开头进行遍历,利用集合无重复元素的特性,用来看子串有没有重复字符。并且在遍历的过程中,因为窗口移动的时候,两边边界都要向后移动,就可以利用双指针进行移动。还有就... ...
分类:
其他好文 时间:
2020-06-19 20:51:15
阅读次数:
37
快排(双指针): void quick_sort(int q[],int l,int r) { if(l>=r)return ; int i=l-1,j=r+1,x=q[(l+r)>>1]; while(i<j) { do i++;while(q[i]<x); do j--;while(q[j]>x ...
分类:
编程语言 时间:
2020-06-18 21:11:23
阅读次数:
66
思路是双指针,分别指向两个链表的头节点,循环这个链表,之后再去循环另一个链表。 分为两种情况: 一种是没有交点; 循环之后就返回 NULL,因为没有交点 另一种是有交点; 循环之后两个指针都指向了交点。 ...
分类:
其他好文 时间:
2020-06-17 21:51:16
阅读次数:
69
1. 两数之和 本题可以有两种方法,一种先排序,再用双指针法找到两数。另一种利用哈希表存储值对应的下标,如果在表中找到target-nums[i]对应的值,则直接输出 Java class Solution { public int[] twoSum(int[] nums, int target) ...
分类:
其他好文 时间:
2020-06-17 01:48:53
阅读次数:
65
双指针 思路: 创建一个空的头结点dummy,头节点的下一节点是head。用cur指向当前要处理去重的节点,pre指向上一个完成去重的节点。初始状态pre = dummy,cur = pre.next。开始对cur进行处理,如果cur.next.val == cur.val,while遍历更新cur ...
分类:
编程语言 时间:
2020-06-15 12:15:09
阅读次数:
58
双指针 思路: 双指针覆盖多余重复项,一个指针i负责遍历,一个指针j负责要覆盖的重复项位置。 用count记录重复项的个数,则不用覆盖的情况是nums[i]==nums[j]并且count>2,那么需要覆盖的情况就是nums[i] != nums[j] 或者 count<=2,这里我们可以在nums ...
分类:
编程语言 时间:
2020-06-14 15:00:47
阅读次数:
63
给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例: 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足要求的三元组 ...
分类:
其他好文 时间:
2020-06-13 00:28:21
阅读次数:
46
给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例: 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足要求的三元组 ...
分类:
其他好文 时间:
2020-06-12 20:03:59
阅读次数:
82
地址 https://www.acwing.com/file_system/file/content/whole/index/content/583673/ 你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c , 使得 a + b + c = 0 ?请你找出所有满 ...
分类:
其他好文 时间:
2020-06-12 14:22:48
阅读次数:
47