• I'm gonna tell you go sort the left, go sort the right, and then I'll merge the two together.

    那先对左半部分排序对右半部分排序,然后将两者合并起来。

    哈佛公开课 - 计算机科学课程节选

  • Where those pieces, I would do the same thing with, I would divide them up into smaller chunks, and sort those. Is that going to give me a more efficient algorithm?

    合并起来,而那些小列表,我又会把他们拆成更小的列表,再排序,这会给我,一个更高效的算法么?

    麻省理工公开课 - 计算机科学及编程导论课程节选

  • The fact that the picture is a little prettier on the far right is testament to the fact that I'm sorting the left half, the left half, the left half, and that's why you get these little triangles, triangles, triangles, that then get merged together.

    可以看到最右边的画面,变化很快,先对左半部分排序,然后左半部分,这就是为什么会有这些小三角形,最后将它们合并起来。

    哈佛公开课 - 计算机科学课程节选

  • Run merge sort on those. By induction, if it does the right thing, I'm going to get back two lists, and I'm going to then merge Them together. Notice what I'm going to do.

    在这些上面运行归并排序,根据归纳,如果这样是正确的,我将重新得到两个列表,然后我会把它们合并在一起。

    麻省理工公开课 - 计算机科学及编程导论课程节选

  • OK, what I would like you to see is I've been printing out, as I went along, actually let's back up slightly and look at the code. There's merge sort.

    好的,我想让你们看就是我运行过后,打印出来的结果,我们回头看一下这段代码,这就是归并排序,输入一个列表。

    麻省理工公开课 - 计算机科学及编程导论课程节选

  • OK, so that's still comes back to my question.

    如果我想搜索,我应该先排序搜索么?

    麻省理工公开课 - 计算机科学及编程导论课程节选

  • Selection sort too really reduces to a total number of comparisons because I'm again comparing the current smallest to the next thing I see, the next thing, so really a lot of these sorting algorithms boil down to comparisons and the numbers that you actually have to make.

    选择排序也可归纳为总数的比较,因为要将当前最小者与下一个进行比较,接着下一个,可见,很多排序算法都可归结为比较,以及需要比较的次数。

    哈佛公开课 - 计算机科学课程节选

  • Let's try it again. Test bubble sort.

    让我们试一试吧,测试下冒泡排序

    麻省理工公开课 - 计算机科学及编程导论课程节选

  • So to just preface what we're going to do next time, what would happen if I wanted to do sort, and rather than in sorting the entire list at once, I broke it into pieces, and sorted the pieces, and then just figured out a very efficient way to bring those two pieces and merge them back together again?

    所以为了引导下一次,我们要讲的内容,如果我想做排序,而且不是一次吧整个列表排完,会发生什么,我把它拆成小的列表,然后把各个小列表排序,接着用高效的方法把小的列表?

    麻省理工公开课 - 计算机科学及编程导论课程节选

  • Really there's no work to be done if I am handed all in sorted order so, you know, There's no work to be done if I'm handed all of the arrays in sorted order so, you know, if I demand that you give me this assumption that the cups are already sorted and then I'll sort them for you, I mean, this is kind of a cyclical argument.

    如果杯子是有序排列的,那就没必要对它进行排序了,同样如果给出的序列本身就是有序的,那也不必做什么,如果给出这样的假设:,杯子已经有序,但仍需要对其进行排序,这像是个循环的论点。

    哈佛公开课 - 计算机科学课程节选

  • They are computationally challenged, meaning, at the time they were invented, they were perfectly good sorting algorithms, there are better ones, we're going to see a much better one next time around, but this is a good way to just start thinking about how to do the algorithm, or how to do the sort.

    他们是相当棒的排序算法,是有更好的算法,我们下一次,就会看一个更好的,但是开始想想,如何完成算法,或者说是如何排序,是一个好的学习方法,恩,试试吧,如何来排序呢?

    麻省理工公开课 - 计算机科学及编程导论课程节选

  • I could still do the linear case, which is order n or I could say, look, take the list, let's sort it and then search it. But in that case we said well to sort it was going to take n log n time, assuming I can do that.

    我仍然可以做O的线性搜索,或者也可以以这个列表为例,我们先将其进行排序,然后进行查找,但是在这种情况下,要花费n,log,n的时间去对其进行排序

    麻省理工公开课 - 计算机科学及编程导论课程节选

  • On the other hand, if I want to sort it first, OK, if I want to do sort and search, I want to sort it, it's going to take n log n time to sort it, and having done that, then I can search it in log n time.

    我先排序,好的,如果我想排序搜索,我要排序,这需要花n,log,n时间排序,然后做完了,我们能花log,n时间搜索,啊,哪一种更好呢?恩,呵呵。

    麻省理工公开课 - 计算机科学及编程导论课程节选

$firstVoiceSent
- 来自原声例句
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定