首页 > 编程知识 正文

互联网面试题汇总,数据结构与算法面试题

时间:2023-05-03 19:33:08 阅读:13469 作者:1059

来源: https://github.com/azl 397985856/leet code

解答介绍leetcode问题,记录自己解决leetcode问题的途径。

这个仓库现在被分成五个部分。

第一部分是对leetcode经典主题的分析,包括创意、关键点和具体代码实现。

第二部分是数据结构和算法的总结

第三部分是anki卡,用一定的方法将leetcode主题记录到anki中,方便大家记住。

第四部分是每天的问题

第五部分是计划,在此记录将来追加到上述三个部分的内容

只有熟悉基础数据结构和算法才能处理复杂的问题。

使用指南有关最近添加的部分,请稍后再说? 标记

关于最近更新的部分,是稍后吗? 标记

将来在这里更新anki卡

这里有一个思维导图,总结了互联网公司面试中经常考虑的问题类型,结合图片信息进行分析吧。

其中,算法主要包括:

基础技巧:分治、二分、贪婪

排序算法:快速排序、合并排序、计数排序

搜索算法:回溯、递归、深度优先搜索、广度优先搜索、双叉搜索树等

图论:最短路径,最小生成树

动态规划:背包问题,长子序列

数据结构主要包括:

数组链表:单/双向链表

堆栈和队列

散列表

堆:最大堆/最小堆

树与图:近期公众祖先,并检集

字符串:前缀树(词典树) /后缀树

3358 www.Sina.com/0042.trapping-rain-water :

浏览器中的堆栈:

回溯探测3360

0198.house-robber:

0454.4-sum-ii:

33558 www.Sina.com/top 100锁定查询(54/100 )。

topinterviewquestions(82/145 ) )。

3358 www.Sina.com/http://www.Sina.com /这里只是列举了代表性主题,并没有列举所有主题

33558 www.Sina.com/0020.valid parentheses

026.remove-duplicates-from-sorted-array

0088 .合并的阵列

0104 .最大深度-二进制树?

0121 .最佳时间-待办事项-与- sell stock

0122 .最佳时间-待办事项-与- sell-stock-ii

0125.valid-palindrome?

0136.single-number

0155.min-stack?

0167.two-sum-ii-input-array-is-sorted

0172.factorial-trailing-zeroes?

0169.majority-element

0190 .反转位

0191 .编号1位

0198.house-robber

0203 .移除链接列表元素

0206 .恢复链接列表

0219.contains-duplicate-ii

0226.invert-binary-tree

0263.ugly-number

0283.move-zeroes

0342 .电源关闭

0349.Intersection-of-two-arrays

0371.sum-of-two-integers

0575.distribute-candies

33558 www.Sina.com/0002.addtwonumbers

003.longestsubstringwithoutrepeatingcharacters

005.longest-palindromic-substring?

0011.container-with-most-water

00

15.3-sum

0019. Remove Nth Node From End of List

0024. Swap Nodes In Pairs

0029.divide-two-integers ?

0039.combination-sum

0040.combination-sum-ii

0046.permutations

0047.permutations-ii

0048.rotate-image ?

0049.group-anagrams ?

0055.jump-game

0056.merge-intervals

0062.unique-paths

0073.set-matrix-zeroes

0075.sort-colors

0078.subsets

0086.partition-list

0090.subsets-ii

0091.decode-ways

0092.reverse-linked-list-ii

0094.binary-tree-inorder-traversal

0098.validate-binary-search-tree ?

0102.binary-tree-level-order-traversal

0103.binary-tree-zigzag-level-order-traversal

0131.palindrome-partitioning ?

0139.word-break

0144.binary-tree-preorder-traversal

0150.evaluate-reverse-polish-notation

0152.maximum-product-subarray

0199.binary-tree-right-side-view

0201.bitwise-and-of-numbers-range

0208.implement-trie-prefix-tree

0209.minimum-size-subarray-sum

0230.kth-smallest-element-in-a-bst

0236.lowest-common-ancestor-of-a-binary-tree?

0238.product-of-array-except-self

0240.search-a-2-d-matrix-ii

0279.perfect-squares

0309.best-time-to-buy-and-sell-stock-with-cooldown ?

0322.coin-change

0328.odd-even-linked-list

0334.increasing-triplet-subsequence

0365.water-and-jug-problem

0416.partition-equal-subset-sum

0445.add-two-numbers-ii

0454.4-sum-ii

0494.target-sum

0516.longest-palindromic-subsequence ?

0518.coin-change-2

0609.find-duplicate-file-in-system ?

0875.koko-eating-bananas

0877.stone-game

0887.super-egg-drop

0900.rle-iterator

1031.maximum-sum-of-two-non-overlapping-subarrays ?

困难难度

0023.merge-k-sorted-lists

0032.longest-valid-parentheses ?

0042.trapping-rain-water

0128.longest-consecutive-sequence ?

0145.binary-tree-postorder-traversal

0146.lru-cache

0239.sliding-window-maximum

0295.find-median-from-data-stream ?

0301.remove-invalid-parentheses

数据结构与算法的总结

数据结构(草稿)

基础算法(草稿)

二叉树的遍历

动态规划

哈夫曼编码和游程编码

布隆过滤器

字符串问题

anki 卡片

Anki主要分为两个部分:一部分是关键点到题目的映射,另一部分是题目到思路,关键点,代码的映射。

全部卡片都在anki-card

使用方法:

anki - 文件 - 导入 - 下拉格式选择“打包的 anki集合”,然后选中你下载好的文件,确定即可。

更多关于anki使用方法的请查看anki官网

目前已更新卡片一览(仅列举正面):

二分法解决问题的关键点是什么,相关问题有哪些?

如何用栈的特点来简化操作, 涉及到的题目有哪些?

双指针问题的思路以及相关题目有哪些?

滑动窗口问题的思路以及相关题目有哪些?

回溯法解题的思路以及相关题目有哪些?

数论解决问题的关键点是什么,相关问题有哪些?

位运算解决问题的关键点是什么,相关问题有哪些?

已加入的题目有:#2 #3 #11

每日一题

每日一题汇总

每日一题认领区

计划

anki 卡片 完善

字符串类问题汇总

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。