My Algorithms and Data Structures Implementation
leetcode推前算法和数据结构我使用现代JavaScript实现的各种算法。对我来说薄弱的话题:旋转矩阵 - CTCI - 1.8 - 发现这真的很难,字符串旋转 - CTCI - 1.9 - 解决方案出乎意料。各种摊销操作的运行时间 需要基数排序实现,回想一下跳转搜索算法以及它何时有用(在数组末尾未知时进行搜索)。需要外部排序实现 && 基于内存的问题和 2 - 10.6、10.7、10.8 的幂。Day-Stout-Warren算法(热平衡二叉搜索树) - 也应该了解更多关于 AVL 和 RB 树的知识。寻找BST问题集 - 在 leetcode 上很少,需要一个基于节点的 BST 实现来解决很多旋转问题。这些是我在处理算法类型问题时采取的步骤:
-
听问题
-
问题中给出了哪些细节-是否有任何细节使这个问题变得独特或非常精确-这些细节的含义是什么?
-
我将这些含义写下来,以便在解决问题时它们在我的脑海中
-
立即考虑哪些进一步的细节会影响您的解决方案-例如,如果检查字符串唯一性:大写是否重要
-
制作示例/测试用例如果问题没有