开发者社区> 问答> 正文

c#中的二进制补丁生成

有没有人知道C#中的二进制补丁生成算法实现?

基本上,比较两个文件(指定为old和new),并生成一个补丁文件,该文件可用于升级旧文件,使其内容与新文件相同。

实现必须相对较快,并且可以处理大量文件。它应显示O(n)或O(logn)运行时。

我自己的算法往往比较糟糕(快速但产生大量补丁)或较慢(产生较小但具有O(n ^ 2)运行时)。

任何建议或实现的指针都将是不错的。

展开
收起
游客ufivfoddcd53c 2020-01-03 19:02:37 762 0
1 条回答
写回答
取消 提交回答
  • bsdiff旨在为二进制文件创建非常小的补丁。如其页面上所述,它需要max(17n,9n+m)+O(1)内存字节并O((n+m) log n)及时运行(其中n是旧文件m的大小,是新文件的大小)。

    最初的实现是C,但C#端口描述这里和可用在这里。

    2020-01-03 19:02:56
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载