时间复杂度

空间复杂度

经典例题

  • 找出B中不属于A的数

  • 荷兰国旗问题

  • 矩阵打印问题

  • 岛问题

经典结构和算法

  • 字符串

    • KMP算法

    • 前缀树

  • 数组

    • 冒泡排序

    • 选择排序

    • 插入排序

    • 归并排序

    • 快速排序

    • 堆排序

    • 排序算法的稳定性

    • 比较器的使用

    • 有关排序问题的补充

    • 工程中的综合排序算法

    • 桶排序

    • 计数排序

    • 补充问题

  • 链表

    • 反转单链表和双向链表

    • 判断一个链表是否为回文结构

    • 链表与荷兰国旗问题

    • 复制含有随机指针结点的链表

    • 若两个可能有环的单链表相交,请返回相交的第一个结点

  • 栈和队列

    • 用数组结构实现大小固定的栈和队列

    • 取栈中最小元素

    • 仅用队列结构实现栈结构

    • 仅用栈结构实现队列结构

  • 二叉树

    • 实现二叉树的先序、中序、后续遍历,包括递归方式和非递归方式

    • 在二叉树中找一个结点的后继结点,结点除left,right指针外还包含一个parent指针

    • 介绍二叉树的序列化和反序列化

    • 判断一个树是否是平衡二叉树

    • 判断一棵树是否是搜索二叉树

    • 判断一棵树是否是完全二叉树

    • 已知一棵完全二叉树,求其结点个数,要求时间复杂度0(N)

  • 并查集

    • 并查集结构的实现

    • 并查集的应用

贪心策略

  • 拼接最小字典序

  • 金条和铜板

  • IPO

  • 会议室项目宣讲

递归和动态规划

  • 暴力递归

    • n!问题

    • 汉诺塔问题

    • 打印一个字符串的所有子序列

    • 打印一个字符串的所有全排列结果

    • 母牛生牛问题

  • 暴力递归改为动态规划

    • 最小路径和

    • 一个数是否是数组中任意个数的和

    • 哪些暴力递归能改为动态规划

哈希

  • 哈希函数

  • 哈希表

  • 布隆过滤器

  • 一致性哈希算法的基本原理

  • RandomPool

小技巧

  • 对数器

  • 打印二叉树

  • 递归的实质和Master公式

【优质文章推荐】:

BAT大厂历年高频的核心面试知识及答案

【吊打面试官】大厂高频面试题和答案

【吊打面试官】数据库高频面试题汇总

回复【左神】领取完整算法答案哈~

判断是否为二叉排序树的递归算法_左神直通BAT算法笔记(基础篇)相关推荐

  1. 左神数据结构与算法 笔记(二)

    文章目录 第七节课 1.二叉树 1.1.二叉树的先序.中序.后序遍历 1.2二叉树的按层遍历 二叉树的最大宽度: 1.3二叉树的序列化和反序列化 第八节课 1.题目一 2.题目二 3.折纸 4.二叉树 ...

  2. 左神数据结构与算法(基础)——表、树、图、贪心、递归

    2.1 哈希表.有序表.单链表和双链表 ①哈希表的简单介绍 1>哈希表在使用层面可以理解为一种集合结构. 2>如果只有key,没有伴随数据value,可以使用HashSet结构 3> ...

  3. 左神数据结构与算法(中级提升)——02

    题目十一:二叉树递归套路 二叉树的每个节点都有一个int型权值,给定一棵二叉树,要求计算出从根节点到叶节点的所有路径中,权值和 最大的值为多少. package class02;public clas ...

  4. vscode html注释快捷键_宇宙最强vscode教程(基础篇)

    本文主要介绍vscode在工作中常用的快捷键及插件,目标在于提高工作效率 本文的快捷键是基于mac的,windows下的快捷键放在括号里 Cmd+Shift+P(win Ctrl+Shift+P) 零 ...

  5. shell美元符_美元符号_笨办法学Bash Shell编程-基础篇视频课程_Linux视频-51CTO学院...

    聪明人下笨功夫.本课程所倡导"笨办法"的核心是: ● 手动输入所有代码,不要复制粘贴! ● 正确地输入所有代码,也包括注释 ● 运行代码并保证产生相同的输出 ● 如果出现了bug, ...

  6. linux 命令详解 大于号_大于号与小于号_笨办法学Bash Shell编程-基础篇视频课程_Linux视频-51CTO学院...

    聪明人下笨功夫.本课程所倡导"笨办法"的核心是: ● 手动输入所有代码,不要复制粘贴! ● 正确地输入所有代码,也包括注释 ● 运行代码并保证产生相同的输出 ● 如果出现了bug, ...

  7. 跟着左神刷爆算法——链表

    哈希表: 1)哈希表在使用层面上可以理解为一种集合结构 2)如果只有key,没有伴随数据value,可以使用HashSet结构 3)如果既有key,又有伴随数据value,可以使用HashMap结构 ...

  8. python语音程序设计基础篇_【笔记】python自学笔记(基础篇)——字典操作

    字典:是一系列键值对,每个关键字都对应一个值,我们可以使用关键字来访问关联的值,与关键字关联 的可以是数,字符串,列表乃至字典,事实上,可将任何python对象用作字典的值 字典用放在花括号{}中的一 ...

  9. fdisk 分区_【linux】循序渐进学运维-基础篇-分区命令fdisk

    大家好,我是高胜寒,本文是Linux运维-循序渐进学运维-基础篇的第47篇文章. 本文我们来讨论一下fdisk命令的使用,使用fdisk可以做分区管理. 1. 命令概述: fdisk 作用: 磁盘分区 ...

最新文章

  1. js处理json和字符串示例
  2. 【NLP】选择目标序列:贪心搜索和Beam search
  3. nginx之反向代理配置
  4. 《Spring微服务实战》读书笔记——通过配置服务器来管理配置
  5. maven简单了解,没有Maven和使用Maven的区别
  6. java 环境变量配置
  7. 购物网站的商品推荐算法有哪些?
  8. html中怎么让div撑开,html中子div用了浮动怎样让父div的大小自动撑开(清除浮动)...
  9. 使用 CC-359 数据集进行 MRI 重建(二)
  10. LE MAX2 X820刷机记
  11. matlab升幂降幂排列,升幂降幂是什么意思(升幂排列与降幂排列)
  12. * word 2000 与 word 2003 版本兼容性问题
  13. 游戏推广免费的cps模式和游戏加盟平台选择的一个误区。
  14. 云南师范大学计算机基础教学,云南师范大学841信息技术基础(含计算机文化基础、多媒体技术基础)考研复习经验...
  15. 尝试再造python编译器:龙书重制版
  16. 扫描仪API接入大全:Twain, WIA 或 两者不具有.[换个思路 春暖花开]
  17. Spring官网仓库下载地址
  18. 简约清新日系你好五月通用PPT模板
  19. arm linux 文件清理,ARM Linux 3.10.61 的启动
  20. 关于社群裂变这几点你要懂!

热门文章

  1. 网友提问:SAP FUNCTION使用cl_http_client POST REQUEST的问题
  2. SAP Spartacus UnitDetailsComponent的路由跟踪
  3. rxjs of操作符生成的Observable对象的执行详细分析
  4. 如何创建HTML Mashup并插入到SAP Cloud for Customer标准页面里
  5. How to download BOM from ERP to CRM
  6. CEC tile configuration of Launchpad shell is returned by http request
  7. service请求处理逻辑
  8. CRM Fiori Simulation pipeline应用点了bubble控件的实现
  9. SAP Fiori attachment rename debug
  10. SAP ui5 configuration.js