下面列的所有的算法题目基本都能在本博客中找到 在使用本博文的过程中,可以按照天来复习,每天一个list,完成这些 基本能应付国内互联网公司的算法问题。
第一天
1.给定一个链表 在链表的尾部插入一个元素
2.用两个队列实现一个栈
3.用两个栈实现一个队列
4.求两个有序数组的中位数,可以延伸为求两个有序数组的第k大数,要求复杂度最低(使用二分的思想来做,复杂度logN)
5.atoi 将一个字符串数字变为int类型
6.反转链表 递归和非递归版本 常考
7.快速排序
8.全排列 使用递归解决比较简单
9.青蛙跳台阶问题 递归和跌打
10.LRUcache算法 使用list和Map可实现 list里村cacheEntry map里存key 和 key在list中的iterator地址
第二天
11.trappingRainWater 求数组容器可以容纳水的多少
12.mergeSortedLists
13.不用加号实现加法 用异或和与运算即可解决
14.计算一个数字的二进制形式中1的个数
15.two sum
16.three sum
17.four sum
18.convert 将123abc这种类型的串,前面N个数字后面N个字母 两两交插起来 变为1a2b3c
19.判断一个字符串是否是回文。
20.一个数的N次方。
第三天
21.maxSubStr 和最大的连续子串 最大连续子矩阵
22.matirxFind 一个矩阵 按行递增 按列递增 找一个元素是否在这个矩阵中。
23.堆排序 堆调整
24.
25.
26.
27.
28.