12 2020 档案
摘要:Python的排序算法由Peter Tim提出,因此称为TimSort。它最先被使用于Python语言,后被多种语言作为默认的排序算法。TimSort实际上可以看作是mergeSort+binarySort,它主要是针对归并排序做了一系列优化。如果想看Python的TimSort源码,在Cpytho
阅读全文
摘要:Python排序函数完美体现了Python语言的简洁性,对于List对象,我们可以直接调用sort()函数(这里称为"方法"更合适)来进行排序,而对于其他可迭代对象(如set,dict),我们可以使用更灵活的sorted()函数。 一.List的sort()函数 Python源码builtins.p
阅读全文
摘要:深度优先搜索(DFS)和广度优先搜索(BFS)是图的两种遍历方式。 举个例子,如果我们需要遍历下面这张图的全部节点,有两种选择: 1.选择其中一个节点,一直往前遍历,直至走到死胡同再往后退一步,如果有其他路的话就换条路继续往前走(没路就只能再往后退一步),直至遍历完所有节点。这就是DFS,显然这种方
阅读全文