(精排)Python程序员面试算法宝典 (张波, 楚秦等)高清电子版

书:pan.baidu.com/s/17VnmdM8r9nUxWq8oazjkHg

提取码:7603

我的笔记:

  1. 数组和字符串:查找数组中的最大/最小元素。 实现字符串翻转。 判断一个字符串是否是另一个字符串的排列。 实现字符串压缩。
  2. 链表:反转链表。 检测链表中是否有循环。 合并两个有序链表。 找到链表中的中间节点。
  3. 树和图:实现二叉树的遍历(前序、中序、后序)。 判断二叉树是否对称。 在二叉搜索树中查找一个值。 实现图的深度优先搜索(DFS)和广度优先搜索(BFS)。
  4. 排序和搜索:实现快速排序或归并排序。 在有序数组中查找特定元素。 实现二分查找算法。 实现哈希表。
  5. 动态规划:硬币找零问题。 最长递增子序列。 背包问题。 最长公共子序列。
  6. 其他算法问题:实现一个LRU缓存。 找到数组中的两个数,使它们的和等于特定目标值。 判断一个数是否是2的幂次方。 实现一个简单的正则表达式匹配。
  7. 位运算:使用位运算实现加法。 判断两个整数的二进制表示中有多少位不同。 实现一个只出现一次的数字,其他数字都出现两次。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注