python 剑指offer习题集(持续更新中)

数据结构

链表

  1. python JZ6 从尾到头打印链表(剑指offer)
  2. python JZ24 反转链表(剑指offer)
  3. python JZ25 合并两个排序的链表(剑指offer)
  4. python JZ52 两个链表的第一个公共结点(剑指offer)
  5. python JZ23 链表中环的入口结点(剑指offer)
  6. python JZ22 链表中倒数最后k个结点(剑指offer)
  7. python JZ35 复杂链表的复制(剑指offer)
  8. python JZ76 删除链表中重复的结点(剑指offer)
  9. python JZ18 删除链表的节点(剑指offer)

  1. python JZ55 二叉树的深度(剑指offer) *
  2. python JZ77 按之字形顺序打印二叉树(剑指offer) *
  3. python JZ54 二叉搜索树的第k个节点(剑指offer) *
  4. python JZ7 重建二叉树(剑指offer)
  5. python JZ26 树的子结构(剑指offer) *
  6. python JZ27 二叉树的镜像(剑指offer) *
  7. python JZ32 从上往下打印二叉树(剑指offer) *
  8. python JZ33 二叉搜索树的后序遍历序列(剑指offer) *
  9. python JZ82 二叉树中和为某一值的路径(一)(剑指offer) *
  10. python JZ34 二叉树中和为某一值的路径(二)(剑指offer) *
  11. python JZ36 二叉搜索树与双向链表(剑指offer) *
  12. python JZ79 判断是不是平衡二叉树(剑指offer) *
  13. python JZ8 二叉树的下一个结点(剑指offer)
  14. python JZ28 对称的二叉树(剑指offer) *
  15. python JZ78 把二叉树打印成多行(剑指offer) *
  16. python JZ37 序列化二叉树(剑指offer) *
  17. python JZ84 二叉树中和为某一值的路径(三)(剑指offer) *
  18. python JZ86 在二叉树中找到两个节点的最近公共祖先(剑指offer) *
  19. python JZ68 二叉搜索树的最近公共祖先(剑指offer)*

队列 & 栈

  1. python JZ9 用两个栈实现队列(剑指offer)
  2. python JZ30 包含min函数的栈(剑指offer)
  3. python JZ31 栈的压入、弹出序列(剑指offer)
  4. python JZ73 翻转单词序列(剑指offer) *
  5. python JZ59 滑动窗口的最大值(剑指offer) *

算法

搜索算法

  1. python JZ53 数字在升序数组中出现的次数(剑指offer) *
  2. python JZ4 二维数组中的查找(剑指offer)
  3. python JZ11 旋转数组的最小数字(剑指offer)
  4. python JZ38 字符串的排列(剑指offer) *
  5. python JZ44 数字序列中某一位的数字(剑指offer) *

动态规划

  1. python JZ42 连续子数组的最大和(剑指offer) *
  2. python JZ85 连续子数组的最大和(二)(剑指offer) *
  3. python JZ69 跳台阶(剑指offer) *
  4. python JZ10 斐波那契数列(剑指offer)
  5. python JZ19 正则表达式匹配(剑指offer) *
  6. python JZ71 跳台阶扩展问题(剑指offer) *
  7. python JZ70 矩形覆盖(剑指offer) *
  8. python JZ63 买卖股票的最好时机(一)(剑指offer) *
  9. python JZ47 礼物的最大价值(剑指offer) *
  10. python JZ48 最长不含重复字符的子字符串(剑指offer) *
  11. python JZ46 把数字翻译成字符串(剑指offer) *

回溯

  1. python JZ12 矩阵中的路径(剑指offer)
  2. python JZ13 机器人的运动范围(剑指offer)

排序

  1. python JZ3 数组中重复的数字(剑指offer)
  2. python JZ51 数组中的逆序对(剑指offer) *
  3. python JZ40 最小的K个数(剑指offer) *
  4. python JZ41 数据流中的中位数(剑指offer) *

位运算

  1. python JZ65 不用加减乘除做加法(剑指offer) *
  2. python JZ15 二进制中1的个数(剑指offer) *
  3. python JZ16 数值的整数次方(剑指offer) *
  4. python JZ56 数组中只出现一次的两个数字(剑指offer) *
  5. python JZ64 求1+2+3+…+n(剑指offer) *

模拟

  1. python JZ29 顺时针打印矩阵(剑指offer) *
  2. python JZ61 扑克牌顺子(剑指offer) *
  3. python JZ67 把字符串转换成整数(atoi)(剑指offer) *
  4. python JZ20 表示数值的字符串(剑指offer) *

其他

  1. python JZ66 构建乘积数组(剑指offer) *
  2. python JZ50 第一个只出现一次的字符(剑指offer) *
  3. python JZ5 替换空格(剑指offer)
  4. python JZ21 调整数组顺序使奇数位于偶数前面(一)(剑指offer) *
  5. python JZ39 数组中出现次数超过一半的数字(剑指offer) *
  6. python JZ43 整数中1出现的次数(从1到n整数中1出现的…(剑指offer) *
  7. python JZ45 把数组排成最小的数(剑指offer) *
  8. python JZ49 丑数(剑指offer) *
  9. python JZ74 和为S的连续正数序列(剑指offer) *
  10. python JZ57 和为S的两个数字(剑指offer) *
  11. python JZ58 左旋转字符串(剑指offer) *
  12. python JZ62 孩子们的游戏(圆圈中最后剩下的数)(剑指offer) *
  13. python JZ75 字符流中第一个不重复的字符(剑指offer) *
  14. python JZ14 剪绳子(剑指offer) *
  15. python JZ81 调整数组顺序使奇数位于偶数前面(二)(剑指offer) *
  16. python JZ83 剪绳子(进阶版)(剑指offer) *
  17. python JZ17 打印从1到最大的n位数(剑指offer) *
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值