刘新宇

  • 关注
  • 短消息
  • 送银子
文章
3
评论
2
推荐
0
收藏
0
社区会龄
8 个月
个人网站
--
个人简介

《算法新解》作者

  • 刘新宇 2推荐

    枚举组合

    枚举从n个元素中选取k个元素的所有组合 在《算法新解》一书的附录中(第529-530页),我们给出了如何从n个元素中选取k个元素进行排列的方法。和排列不同,组合并不关心元素间的先后顺序。记n个元素的列表为:{x1 , x2 , ..., xn}。从第一个元素x1开始,我们有两…...

  • 刘新宇 8推荐

    寻找被篡改的数

    这一趣题和《算法新解》前言中的“最小可用Id”问题具有很多类似的地方。 有个从1到n的数字列表,经过某些处理后,发生了两点变化。1)序列的顺序被打乱了;2)其中一个数字x被篡改成了数字y,其中x和y都在1到n之间。能否找到一个线性时间,常数空间的方法,找出丢失的x和重复的y呢…...

  • 刘新宇 9推荐

    最小可用Id的命令式解法

    在《算法新解》的前言中,我们只给出了使用分而治之策略的线性时间O(n),常数空间O(1)的解法。这里我们给出另外两种命令式解法,它们都可以达到同样的性能。 首先我们先回顾一下书中讨论的一个重要性质 1 <= answer <= n + 1 其中n是序列的长度,…...

评论了

  • 今年 07-11 05:16
    刘新宇 评论了图书 算法新解

    非常感谢指出这个问题。如果y.right非空,的确需要其父节点设置正确。这两处修改可以合并在一起。即在删除y之前: if y.right is not None: y.right.parent = y.parent 请参考 https://github.com/liuxinyu95/AlgoXY/blob/algoxy/datastruct/tree/binary-search-tree/src/bstree.py#L136

  • 今年 06-04 07:00
    刘新宇 评论了图书 算法新解

    这个建议很好。对于非论文注释,我接下来在原稿上加入参考文献中的页码,方便查看引用。

  • 今年 05-17 09:03
    刘新宇 评论了文章 枚举组合

    另一个递归的解法: https://github.com/liuxinyu95/AlgoXY/blob/algoxy/others/appendix/list/src/comb.py#L17

  • 今年 04-02 07:24
    刘新宇 评论了文章 枚举组合

    增加了另一个思路的方法。

  • 今年 04-02 07:20
    刘新宇 评论了文章 枚举组合

    志斌这个更好。前面两个pattern后,已确定xs可以表达为(x:xs')的形式了。