剑指offer刷题指南

简介: 剑指offer刷题指南

https://cuijiahua.com/blog/2018/02/basis_67.html

 

数据结构类题目

LinkedList

面试题06-从尾到头打印链表

面试题22-链表中倒数第k个结点

面试题24-反转链表

面试题25-合并两个排序的链表

面试题35-复杂链表的复制

面试题52-两个链表的第一个公共节点

面试题18-删除链表的节点

 

Tree

面试题07-重建二叉树

面试题26-树的子结构

面试题27-二叉树的镜像

面试题32-1 -从上往下打印二叉树

面试题32-2 -从上往下打印二叉树 2

面试题32-3 -从上往下打印二叉树 3

面试题33-二叉搜索树的后序遍历序列

面试题34-二叉树中和为某一值的路径

面试题36-二叉搜索树与双向链表

面试题55-1-二叉树的深度

面试题55-2-平衡二叉树

面试题28-对称的二叉树

面试题37-序列化二叉树

面试题54-二叉搜索树的第k大节点

 

Stack & Queue

面试题09-用两个栈实现队列

面试题30-包含min函数的栈

面试题31-栈的压入、弹出序列

面试题58-1-翻转单词顺序

面试题59-1-滑动窗口的最大值

 

Heap

面试题40-最小的K个数

 

Hash Table

面试题50-第一个只出现一次的字符

 

面试题12-矩阵中的路径(BFS)

面试题13-机器人的运动范围(DFS)

具体算法类题目

斐波那契数列

面试题10-1-斐波拉契数列

面试题10-2-青蛙跳台阶问题

 

搜索算法

面试题04-二维数组中的查找

面试题11-旋转数组的最小数字(二分查找)

面试题56-1-数组中数字出现的次数(二分查找)

 

全排列

面试题38-字符串的排列

 

动态规划

面试题42-连续子数组的最大和

面试题19-正则表达式匹配(我用的暴力)

 

回溯

面试题12-矩阵中的路径(BFS)

面试题13-机器人的运动范围(DFS)

 

排序

面试题51-数组中的逆序对(归并排序)

面试题40-最小的K个数(堆排序)

 

位运算

面试题15-二进制中1的个数

面试题16-数值的整数次方

 

其他算法

面试题05-替换空格

面试题21-调整数组顺序使奇数位于偶数前面

面试题39-数组中出现次数超过一半的数字

面试题43- 1~n整数中1出现的次数

面试题45-把数组排成最小的数

面试题49-丑数

面试题57-2-和为S的连续正数序列(滑动窗口思想)

面试题57-和为S的两个数字(双指针思想)

面试题58-2-左旋转字符串(矩阵翻转)

面试题62-圆圈中最后剩下的数(约瑟夫环)

面试题66-构建乘积数组


相关文章
|
设计模式 SQL 算法
大数据面试总结
大数据面试总结
155 0
|
存储 搜索推荐 关系型数据库
用户画像系列——HBase 在画像标签过期策略中的应用
用户画像系列——HBase 在画像标签过期策略中的应用
320 0
|
算法
m基于OFDM系统的PAPR性能matlab仿真,对比LFDMA,IFDMA,DFDMA
在MATLAB 2022a中,进行了OFDM、LFDMA、IFDMA和DFDMA的PAPR仿真,显示了两种图像结果。PAPR是OFDM系统中的关键指标,影响功率放大器效率。LFDMA通过数据分配减少峰值,IFDMA利用交织子载波,DFDMA则通过时域分布降低峰值。MATLAB程序执行包括数据频域映射、子载波分配、时域转换、脉冲整形和PAPR计算,并根据不同模式和子载波策略保存结果。程序还绘制了PAPR的累积分布函数(CCDF)图,用于比较不同方法的效果。
379 5
|
Unix Shell 开发工具
Github-Git for windows&TortoiseGit下载与安装
Github-Git for windows&TortoiseGit下载与安装
1096 0
|
存储 NoSQL 数据库
数据库从0到0.1 (一): LSM-Tree VS B-Tree
数据库从0到0.1 (一): LSM-Tree VS B-Tree
194 0
|
前端开发 Java 程序员
如何在swagger2中配置header请求头等参数信息?(若不会,我便手把手教你)
如何在swagger2中配置header请求头等参数信息?(若不会,我便手把手教你)
3743 1
|
消息中间件 Java Kafka
在Java中实现分布式事务的常用框架和方法
总之,选择合适的分布式事务框架和方法需要综合考虑业务需求、性能、复杂度等因素。不同的框架和方法都有其特点和适用场景,需要根据具体情况进行评估和选择。同时,随着技术的不断发展,分布式事务的解决方案也在不断更新和完善,以更好地满足业务的需求。你还可以进一步深入研究和了解这些框架和方法,以便在实际应用中更好地实现分布式事务管理。
1053 161
|
监控 前端开发 jenkins
Jenkins 在前端项目持续部署中的应用,包括其原理、流程以及具体的实现方法
本文深入探讨了Jenkins在前端项目持续部署中的应用,涵盖其基本原理、流程及具体实现方法。首先介绍了Jenkins的基本概念及其在自动化任务中的作用,随后详细解析了从前端代码提交到生产环境部署的全过程,包括构建、测试、部署等关键步骤。最后,强调了持续部署中的代码质量控制、环境一致性、监控预警及安全管理等注意事项,旨在帮助开发者高效、安全地实施持续部署。
326 5
|
Kubernetes 安全 微服务
使用 Istio 缓解电信 5G IoT 微服务 Pod 架构的安全挑战
使用 Istio 缓解电信 5G IoT 微服务 Pod 架构的安全挑战
259 8
ELK 圣经:Elasticsearch、Logstash、Kibana 从入门到精通
ELK是一套强大的日志管理和分析工具,广泛应用于日志监控、故障排查、业务分析等场景。本文档将详细介绍ELK的各个组件及其配置方法,帮助读者从零开始掌握ELK的使用。