Zacharia2 / SuperMemo-Toolkit

SuperMemo 增强工具(CLI命令行)。包含图链整理、EPUB图书转换导入、Latex公式转图片等。
GNU General Public License v2.0
25 stars 3 forks source link

Toc去重 #17

Closed Zacharia2 closed 10 months ago

Zacharia2 commented 10 months ago

def split_section(html, doc_id):

def getContent(book, href):

可以不用了。

Zacharia2 commented 10 months ago

目标:迭代目录树,筛查去除含有相同href的元素,比如Text/Section0001_0012.xhtml#toc_1

可以使用集合的唯一性解决问题。

Zacharia2 commented 10 months ago

https://www.javaroad.cn/questions/28289

Zacharia2 commented 10 months ago

实现更好复杂性的一种方法是使用 hash-table . 您可以在BST上执行遍历并将每个节点的计数存储在哈希表中 . 然后,再做一次(以任何适合你的方式)并删除计数大于 1 的节点 . 假设树是 balancer 的,该方法具有改进的 O(n*logn) 的复杂性 .