Skip to content

常见的算法和数据结构题目,摘自《剑指 Offer》,使用 Python 3 实现。

License

Notifications You must be signed in to change notification settings

marrygit/coding-interview-python

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Coding Interview

Build Status Coverage Status

《剑指 Offer》中的面试题解决方案汇总,相关实现使用 Python 3.6 完成,使用 pytest 作为单元测试工具,coverage 提供测试覆盖率报告。

目录

数据结构

  1. 队列
  2. 双端队列
  3. 单向链表

排序算法

  1. 冒泡排序:bubble_sort
  2. 选择排序:selection_sort
  3. 插入排序:insertion_sort
  4. 希尔排序:shell_sort
  5. 归并排序:merge_sort
  6. 堆排序:heap_sort
  7. 快速排序:quick_sort

经典问题

  1. 求链表中的倒数第 k 个节点
  2. 找出数组中重复的数字
  3. 不修改数组找出重复的数字
  4. 二维数组查找
  5. 字符串空格替换
  6. 有序列表合并
  7. 倒序打印链表
  8. 使用两个栈构建队列
  9. 使用两个队列构建栈
  10. 计算斐波那契数列
  11. 员工年龄排序
  12. 旋转数组的最小数字
  13. 矩阵中的路径
  14. 机器人的活动范围
  15. 剪绳子
  16. 二进制中 1 的个数
  17. 数值的整数次方
  18. 删除链表的节点
  19. 删除链表中重复的节点
  20. 正则表达式匹配
  21. 调整数组顺序使奇数位于偶数前面
  22. 链表中环的入口节点
  23. 链表反转
  24. 合并两个排序链表
  25. 顺时针打印矩阵
  26. 包含 min 函数的栈
  27. 栈的压入、弹出序列
  28. 数组中出现次数超过一半的数字
  29. 最小的 k 个数
  30. 数据流的中位数
  31. 连续子数组的最大和
  32. 1~n 整数中 1 出现的次数
  33. 最长不重复子串
  34. 丑数
  35. 第一个只出现一次的字符
  36. 两个链表的第一个公共节点
  37. 在排序数组中查找数字
  38. 0~n-1 中缺失的数字
  39. 数组中数值和下标相等的元素
  40. 和为 s 的数字
  41. 滑动窗口的最大值
  42. 队列的最大值

About

常见的算法和数据结构题目,摘自《剑指 Offer》,使用 Python 3 实现。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.9%
  • Makefile 0.1%