面试重点算法题

笔试如果用牛客会让自己写输入输出(参考https://ac.nowcoder.com/acm/contest/320#question);面试手撕一般写函数即可

just for me && 复习时间少:红色较难免看,黄色简单免看,黑色看一下代码,绿色练习敲码

!!!做每题之前都要想一下这道题为什么会想到用这种方法!!!

一、图论

最短路径:leetcode743(djkstra)、399(floyd);poj18471062(djkstra)、2240(floyd、bellman)、3259(bellman)

拓扑排序:[判断有向图是否有环:leetcode210、802]、310;poj1094(模板题)、2585

二分图:leetcode785(判断是否是二分图);poj3041、3020(最大匹配的应用)

最小生成树:poj2485(模板题)、3522、1789

二、动态规划

!!!将问题的求解转化为子问题的求解,比如dp[i]可以由dp[i-1]或者dp[i-2]之类的求得!!!

背包问题:leetcode322、279(完全)、416494(01);poj3624(经典01)、1837(多重)、1276(多

重)、1384(完全)、2063(完全)

数字三角形:poj3176;leetcode120、118、119

二进制:leetcode338

括号匹配:leetcode32

树形动规:leetcode96337;poj1463

爬楼梯类型(第i步的结果与前几步有关):leetcode74670、91、639

最大连续子序列和:leetcode53152最大跳跃子序列的和:leetcode740213连续子序列的和:leetcode303、304

LIS(最长上升子序列):leetcode646673139、140poj1836

LCS(最长公共子序列):[模板题:poj1159;leetcode583]、[变形(字符串匹配):leetcode712、72、10、poj10803267](要注意字符串是从下标0还是1开始储存的,以及初始化的含义)

回文串:leetcode5、647、516poj32801159(这道也属于LCS)

股票问题:leetcode121、122、309123(前两道用不着dp)

矩阵:leetcode6397、174、221

三、搜索

二分搜索:leetcode81、6950、74、240、162、4

bfs:leetcode111、116、117127、662;poj31262251

回溯法:leetcode4790491、77、39、40、93、131172295、[棋盘:51;poj1321]

dfs:leetcode[二维网格:leetcode79329、37200、poj36202488、3009]、[BST:中序遍历:99、501、538;中序/普通DFS:98;普通DFS:108105106、235]、[二叉树:236、110、111、112、113、437、129、543、124、687、617]87494、802;poj2531、1186、1934

四、数据结构

数组:leetcode4154、238、169、448、442、287、581、384

排序:leetcode56349493;快排、归并、选择、冒泡、插入、希尔、计数(参照笔记和cpp文件)

数字:leetcode79

双指针:leetcode758815、18、42、283713764383

链表:leetcode21923、[翻转链表:206、234、92、2425]、61、82、86114141、142、160143147148

字符串:leetcode557148、383068125680poj30801035

并查集:leetcode684、721130

哈希表map:leetcode732、253、1、49697336、133、138、146、560;poj18402503

哈希表set:leetcode771、36、500、720、128

栈:leetcode332、20、394、71、84、85、402、1047、587、155、94、144、145、739、150

队列:leetcode253、239、215、347;poj1862(c++优先级队列默认从大到小)

树状数组:hdu1166leetcode307;poj2352(星星等级)、1195(二维数组)

线段树leetcode211;poj28282750

五、贪心法

leetcode55、45、630、122、134、406、621

poj1700、1862、2393、1017、2287

六、数学

位运算:leetcode136、137、461、342

二进制:leetcode89

七、其他题型

334(LIS)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值