我正在尝试确定是使用宏打开一组带书签的链接更快还是手动打开。
手动算法:
切换到或打开 Chrome。这需要多长时间取决于您打开或切换到应用程序的方式。
用眼睛找到书签菜单栏。
用手(鼠标/触控板)将鼠标移至书签菜单栏。这不同于用眼睛找到它。
如果书签不在第一级,则找到正确的根父文件夹。这里的问题是您可能不记得它,需要四处看看。
用鼠标选择正确的根父文件夹。
用眼睛找到 X 个正确的子父文件夹。相同的 问题如#4。
用鼠标选择 X 个正确的父文件夹。
右键单击所需的组文件夹
查看有关如何打开书签的 3 个选项{相同 窗口、新窗口、隐身窗口}。
当然要动脑子从 3 个选项中选择,哈哈。
用鼠标做出与您的选择相对应的选择。
这就是第一个算法。也许可以根据上下文以某种方式减少它。
宏算法:
- 点击您选择的键盘快捷键触发器
- 键入唯一标识的最少字符数 书签组。当然你要记住组名。
- 点击回车
实际算法可以在这里找到:https://forum.keyboardmaestro.com/t/how-to-create-a-macro-to-open-a-group-of-tabs-in-a-browser/7447/7 )
我显然有偏见,因为我创建了宏,但我正在寻找一些技术评估来证明一个比另一个更快。
更新
我知道这不是一个突出的计算问题,所以请做出并列出假设以使其成为现实。
例如,手动步骤 #3,移动鼠标,涉及 X 和 Y 坐标,那么这不是指数级的吗?
此外,手动步骤 4-8 涉及导航层次结构,这类似于导航树结构。
最佳答案
大 O 表示法用于具有可变大小(通常用 N 表示)的问题,并且重要的是
使得 N 足够大(通常是几千或几百万而不是几百)
不说明实际成本,只说明它们如何随 N 增长。
例如,知道 Quicksort 是 O(N Log N) 和 BubbleSort 是 O(N²),但您无法判断 N = 10 时哪一个最快。一点也不。 (顺便说一下,很可能在某些情况下最快,而在其他情况下最慢。)
说 O(N Log N) 比 O(N²) 快是一种幼稚且错误的说法。对于小 N,大 O 表示法完全没用。
对于您的问题,您可以做的是建立精确的复杂度公式(详细说明操作计数并为它们分配真实的持续时间)。这可能很困难,但更容易对一些代表性案例进行基准测试。
关于algorithm - 计算鼠标与文本输入算法的 Big O 时间复杂度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45205833/