1-1 2N和NN具有相同的增长速度. (2分) T F 作者: DS课程组 单位: 浙江大学 1-2 (NlogN)/1000是O(N)的. (1分) T F 作者: DS课程组 单位: 浙江大学 1-3 N2logN和NlogN2具有相同的增长速度. (2分) T F 作者: DS课程组 单位: 浙江大学 1-4 算法分析的两个主要方面是时间复杂度和空间复杂度的分析. (1分) T F 作者: DS课程组
0.导语 本节为手撕代码系列之第一弹,主要来手撕排序算法,主要包括以下几大排序算法: 直接插入排序 冒泡排序 选择排序 快速排序 希尔排序 堆排序 归并排序 1.直接插入排序 [算法思想] 每一步将一个待排序的记录,插入到前面已经排好序的有序序列中去,直到插完所有元素为止. [代码实现] # 直接插入排序 def insert_sort(arr): length = len(arr) for i in range(length): k = i for j in range(k,0,-1): if
2.1 insertion sort <算法导论>答案 答案索引帖 2.1-1 Using Figure 2.2 as a model, illustrate the operation of INSERTION-SORT on the array A ={31; 41; 59; 26; 41; 58} 这一题很简单,自己想一想过程.(figure 2.2是升序) 2.1-2 Rewrite the INSERTION-SORT procedure to sort into non-incre
算法复杂度是我们来衡量一个算法执行效率的一个度量标准,算法复杂度通常主要有时间复杂度和空间复杂度两种.时间复杂度就是指算法代码在运行最终得到我们想要的结果时所消耗的时间,而空间复杂度则是指算法中用来存储的数据结构所占用的空间.往往一个时间复杂度比较低的算法拥有着较高的空间复杂度,两者是互相影响的,我们前面讲解数据结构中的一些例子和代码也足以说明这一点.本文会简单介绍一下用于描述算法的性能和复杂程度的大O表示法. 我们先来看一段简单的代码,来帮助我们理解什么是大O表示法: function inc
算法导论(CLRS)答案 Chapter Section I 1 2 p II 1 2 3 p III 1 2 p IV 1 2 3 4 p V 1 2 3 4 p VI 1 2 3 4 5 p VII 1 2 3 4 p VIII 1 2 3 4 p IX 1 2 3 p XII 1 2 3 XIII 1 2 3 4 p 假设你有兴趣,能够选一个章节去完毕. 欢迎watch/fork/star/contribute我的项目. 欢迎挑错. Follow @louis1992 on github