LeetCode 83. 删除排序链表中的重复元素
给定一个排序链表,删除所有重复的元素只留下原链表中没有重复的元素。
LeetCode 695. 岛屿的最大面积 最大岛问题(我想了个分治,思路不对,直接爆炸,面试官还是不错的,给我换了道题)
编程题2:股票利润1(还要求写测试用例,要求跑通)
编程题3:股票利润2(可以买卖多次)(这两题都秒了,面试前一晚正好想刷一刷dp的题,就刷了这两题,所以说大家想到什么一定要去学!!!)
编程题1:股票利润1
编程题2:股票利润3(可以买卖两次)(查了下,就是股票利润3,hard)
二分查找,输出下标
19.长度为10的数组,0~9的数字无序且可重复,找出重复的数字,要求:时间复杂度O(n),空间复杂度O(1);(有人会的话请粘到评论区,多谢,注意时间和空间复杂度)
public class Main{ public static void main(String[] args) { int[] arr = {1,1,1,1,2,4,4,6,6,6}; for (int i = 0; i < arr.length; i++) { int index = arr[i]; if (index == i || index == -1){ continue; }else if (index != arr[index] && arr[index] != -1){ int tmp = arr[i]; arr[i] = arr[index]; arr[index] = tmp; i--; }else if (index == arr[index]){ System.out.print(index + " "); arr[index] = -1;//防止像 {3,3,3}这样的输出3 3 } } } }
排序算法比较,复杂度,稳定性等
LeetCode 138. 复制带随机指针的链表
算法题:将链表按k为大小分快,将块内链表反转
算法题
-
给出a=1, b=2, ..., z=26 这样一个编码,问比如组成126有多少种情况(讲思路)
-
只能持有一支股票的股票买卖收益最大是多少
.说一说排序算法知道哪些?时间复杂度都是多少?最好情况下是多少?最坏情况下是多少?
算法题,给定一个精度求一个数的平方根
算法题:字符串单词翻转:如“how are you”变为“you are how”
有一块 两块 五块3种硬币 总共凑成100元 问最小的硬币数是多少?(动态规划)
9. 写一个题 整数除法,不能用除号
算法:对数组表示的整数进行加一( [9,9,9] ---> [1,0,0,0] )
算法:无序数组中和为n的所有种可能(一开始想到了背包问题,但是发现不可以,最后用分治解决,最后实际上还可以剪枝,但是当时没有想这么多)
算法:无序数组中找到满足要求的第一个数字,要求这个数字将数组分割为了一小一大两个部分(空间复杂度优化)
假如有10亿个手机号,怎么样快速判断一个手机号是否在其中(一开始没什么好的思路,面试官一步一步从hash,二分,布隆过滤器引导到位图)
算法题:把数组中奇数放在前面,偶数放在后面,并且奇数偶数都要保证从小到大,要求空间复杂度O(1)
算法题:找出数组中第K大的数
智力题