一定要早日上岸鸭

July 18, 2021

面试题 10.02. 变位词组

面试题 10.02. 变位词组 编写一种方法,对字符串数组进行排序,将所有变位词组合在一起。变位词是指字母相同,但排列不同的字符串。 首先是法1:哈希+排序 法2:模拟 + 计数 由于限定了26个小写字母,所以可以用数组来模拟单词注意cnts[c-'a']是转换为ascii的办法 class Solution...

Read More
July 17, 2021

215. 数组中的第K个最大元素

215. 数组中的第K个最大元素 给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。 请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 class Solution { public void swap(int[]q, int...

Read More
July 17, 2021

160. 相交链表

160. 相交链表 给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。 /** * Definition for singly-linked list. * public...

Read More
July 16, 2021

二分模板

「二分」模板其实有两套,主要是根据 check(mid) 函数为 true 时,需要调整的是 l 指针还是 r 指针来判断。 当 check(mid) == true 调整的是 l 时:计算 mid 的方式应该为 mid = l + r + 1 >>...

Read More
July 16, 2021

33. 搜索旋转排序数组

33. 搜索旋转排序数组 「二分」的本质是两段性,并非单调性。只要一段满足某个性质,另外一段不满足某个性质,就可以用「二分」。 class Solution { public int search(int[] nums, int...

Read More