[1667] Algorithms

Title Text:There was a schism in 2007, when a sect advocating OpenOffice created a fork of Sunday.xlsx and maintained it independently for several months. The efforts to reconcile the conflicting schedules led to the reinvention, within the cells of the spreadsheet, of modern version control.<

Origin:https://xkcd.com/1667/

https://www.explainxkcd.com/wiki/index.php/1667:_Algorithms

演算法

在 2007 年發生過宗教分裂,當時有個擁護 OpenOffice 的教派複製了一份 Sunday.xlsx 並獨立維護了這個檔案幾個月,為了讓兩份衝突的行程能夠重新結合在一起,導致了新發明的誕生,在試算表的格子之中,出現了現代的版本控制系統。

https://xkcd.tw/1667

算法是用于执行任务的基本指令集,通常在计算机上。这个漫画以复杂度递增的顺序列出了一些算法,其中复杂性可以指计算复杂性理论(计算资源的形式化数学计算 – 主要是计算时间和存储空间 – 解决给定问题所需的),或者更多编程复杂性的非正式概念(粗略地,衡量一个软件内部依赖关系和交互的数量和程度)。

在最简单的一端是左键,或在字符串的左端添加填充字符以使其成为特定长度。在许多编程语言中,这是一行代码。这可能暗指最近发生的事件,当时NodeJS Package Manager在处理商标声明时激怒了开发人员。开发人员未发布NPM的所有模块,包括实现左键盘的软件包。大量的程序依赖于这个第三方库而不是自己编程,它们立即停止运行。

Quicksort是一种有效且常用的排序算法。

Git是一种版本控制程序,即允许多个人同时处理相同文件的软件。当某人完成(“提交”)他们的更改时,版本控制程序需要将新内容与现有内容相关联。当不止一个人同时进行重叠更改时,确定如何加入它们的过程称为合并,并且算法不是简单的。

自动驾驶汽车是一种内置传感器和软件的汽车,因此可以自动操纵交通,即无需人工控制器。多年来,各种公司一直在研究这种车辆,虽然它们现在比几年前想象的更远,但我们仍然远离跳入无驾驶出租车的梦想。当汽车本身导航到我们想要的地方时,坐下来。最近兰德尔已经多次提到自动驾驶汽车,这已经成为xkcd上反复出现的话题。

谷歌搜索后端使您能够在浏览器中键入“什么是左撇子算法”并让谷歌返回相关结果列表,包括将“左键盘”更正为“左键盘”,截断“哎呀是什么” “简单地说”是什么“,有时甚至将结果汇总到结果顶部的方框中。所有这些魔法背后都是一种记忆互联网包含哪些页面的方法,这只是令人难以置信的大量数据,以及用于处理数据的更加令人难以置信的复杂算法集。

最后一项是标题:由内布拉斯加州的一个教会团体建立20多年的庞大的Excel电子表格,以协调他们的日程安排。电子表格是一种通用的最终用户开发编程技术,因此人们将Excel用于与会计(其最初目的)无关的各种目的,包括一个制作在Excel中运行的角色扮演游戏的人;但即便如此,当多个不同经验水平的人使用电子表格多年来协调几个协调小组的时间表时,也不会接近发展的复杂性。

在尊重每个人设定的约束的同时,在一组资源上调度任务(例如,护士调度问题)是一个非常复杂的问题,需要随机或启发式方法来解决它。这里,通过电子表格模型的不熟练用户在不使用工程实践的情况下解决该算法将进一步复杂化。这里潜在的夸张在于认为这种情况的组合将产生远远超过驾驶汽车或对互联网的公共内容进行分类所需的复杂性。虽然大多数教堂主要在星期天早上开会,但是在服务期间(特别是如果有多个并发服务)以及主日学校,教堂商务会议和会众范围的活动安排的时间安排都可能需要安排在特定的星期天早上,需要找到一个非常接近最佳解决方案的解决方案,这很快成为一种迫切的需求。此外,由于不同的成员参与了教堂内外的各种活动,以及周日教堂可用的教室,(只是安排合唱团练习时间以协调每个人的工作时间表,这很可能是不可能的,特别是如果两个人分享同样的职业,一个是另一个人的救济,)确实令人生畏。此外,本周可能会有各种委员会会议和青年团体。在标题文本中,电子表格的复杂性的一部分被描述为源自不同程序的文件的不同版本。像分裂和教派一样使用的词语通常用于宗教分裂为信仰差异的群体。在这种情况下,分裂似乎并没有超过神学问题,而是关于开源与专有软件的使用,这些分歧通常与宗教辩论相比较。最有可能的是,所提到的分裂是1054年的东西方分裂。

标题文本还暗示,虽然在分裂后尝试协调并合并两个时间表,但他们在电子表格本身内重新设计了Git的替代方案,使算法至少变得如此复杂。由于大多数电子表格程序都内置了排序算法,因此也暗示了这一方面,并​​且可以将左边距填充与赞美诗的介绍进行比较。这表明复杂性的其他里程碑要么包含在当前版本的电子表格中,要么计划实施。

You May Also Like

More From Author

Leave a Reply

Your email address will not be published. Required fields are marked *