- 博客(18)
- 收藏
- 关注
原创 算法导论:2.2分析算法练习题 python描述
# 2.2分析算法练习题 python描述 # 2.2-1 # Θ(n^3) # 2.2-2 A = [99, 38, 65, 97, 76, 13, 27, 49] # 排序过程 # A = [13, 38, 65, 97, 76, 99, 27, 49] # A = [13, 27, 65, 97, 76, 99, 38, 49] # A = [13, 27, 38, 97, 76, 99...
2018-06-28 14:07:04
343
原创 算法导论:2.1插入排序练习题 python描述
# 2.1插入排序练习题 # 2.1-1 A = [31, 41, 59, 26, 41, 58] A = [31, 41, 59, 26, 41, 58] A = [31, 41, 59, 26, 41, 58] A = [26, 31, 41, 59, 41, 58] A = [26, 31, 41, 41, 59, 58] A = [26, 31, 41, 41, 58, 59] # 2....
2018-06-28 11:55:50
465
原创 算法导论:双重递归过程分析python描述
# 双重递归过程分析 # 1 8 # 1 4 # 1 2 # 1 1 # 2 2 # 3 4 # 3 3 # 4 4 # 5 8 # 5 6 # 5 5 # 6 6 # 7 8...
2018-06-27 18:19:34
592
原创 算法导论:归并排序算法之python实现
A = [99, 38, 65, 97, 76, 13, 27, 49] # 排序步骤 # A = [99, 38, 65, 97][76, 13, 27, 49] # A = [99, 38][65, 97][76, 13][27, 49] # A = [38, 99][65, 97][13, 76][27, 49] # A = [38, 65, 97, 99][13, 27, 49, 76] ...
2018-06-27 15:53:37
441
原创 算法导论:选择排序算法之python实现
A = [99, 38, 65, 97, 76, 13, 27, 49] # 排序过程 # A = [13, 38, 65, 97, 76, 99, 27, 49] # A = [13, 27, 65, 97, 76, 99, 38, 49] # A = [13, 27, 38, 97, 76, 99, 65, 49] # A = [13, 27, 38, 49, 76, 99, 65, 97...
2018-06-27 15:14:30
153
原创 算法导论:两个n位的二进制整数相加问题之python实现
A = [1, 1, 0, 0, 1, 1, 0, 1] B = [1, 1, 1, 0, 1, 0, 1, 1] def sumbinary(A, B): A.reverse() B.reverse() C = [] temp = 0 length = len(A) for i in range(0, length): C.ap...
2018-06-27 14:37:06
1089
原创 算法导论:插入排序算法之python实现
A = [99, 38, 65, 97, 76, 13, 27, 49] # 排序过程 # A = [38, 99, 65, 97, 76, 13, 27, 49] # A = [38, 65, 99, 97, 76, 13, 27, 49] # A = [38, 65, 76, 97, 99, 13, 27, 49] # A = [13, 38, 65, 76, 97, 99, 27, 49] ...
2018-06-27 11:27:14
176
转载 Python3:面向对象高级编程
# 使用__slots__ # 正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性。先定义class: class Student(object): pass # 然后,尝试给实例绑定一个属性: s = Student() s.name = 'Michael' # 动态给实例绑定一个属性 print(s.n...
2018-05-25 17:07:36
226
转载 Python3:面向对象编程
# 面向对象编程 # 类和实例 # 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板, # 比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可能不同。 # 仍以Student类为例,在Python中,定义类是通过class关键字: class Student(object): pass # ...
2018-05-25 15:56:54
971
转载 Python3:返回函数、匿名函数lambda、装饰器、偏函数
# 返回函数函数作为返回值 # 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回。 # 我们来实现一个可变参数的求和。通常情况下,求和的函数是这样定义的: def calc_sum(*args): ax = 0 for n in args: ax = ax + n return ax # 但是,如果不需要立刻求和,而是在后面的代码中,根据需要再...
2018-05-25 14:30:19
464
转载 Python3:高阶函数
# 高阶函数 # 变量可以指向函数 # 以Python内置的求绝对值的函数abs()为例,调用该函数用以下代码: abs(-10) print(abs) # 要获得函数调用结果,我们可以把结果赋值给变量: x = abs(-10) print(x) # 但是,如果把函数本身赋值给变量呢? f = abs print(f) # 结论:函数本身也可以赋值给变量,即:变量可以指向函数。 # 如果一个变量...
2018-05-25 12:07:59
593
转载 Python3:高级特性
# 切片 # 在很多编程语言中,针对字符串提供了很多各种截取函数(例如,substring),其实目的就是对字符串切片。 # Python没有针对字符串的截取函数,只需要切片一个操作就可以完成,非常简单。 L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] print(L) # 取一个list或tuple的部分元素是非常常见的操作 # 笨办法 [L[0...
2018-05-25 10:41:27
519
转载 Python3:函数
# 函数名其实就是指向一个函数对象的引用,完全可以把函数名赋给一个变量,相当于给这个函数起了一个“别名”: a = abs # 变量a指向abs函数 print(a(-1)) # 所以也可以通过a调用abs函数 # 在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。 # 我们以自定义一个求绝对...
2018-05-24 18:56:48
175
转载 Python3:使用dict和set
# Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 d = {'Michael': 95, 'Bob': 75, 'Tracy': 85} print(d['Michael']) # 把数据放入dict的方法,除了初始化时指定外,还可以通过key放入: d['Adam'] = 67 pr...
2018-05-24 17:59:40
198
转载 Python3:循环和分支
# 根据Python的缩进规则,如果if语句判断是True,就把缩进的两行print语句执行了,否则,什么也不做。 # 也可以给if添加一个else语句,意思是,如果if判断是False,不要执行if的内容,去把else执行了 # 注意不要少写了冒号: age = 3 if age >= 18: print('your age is', age) print('adult')...
2018-05-24 17:40:00
294
转载 Python3:使用list和tuple
# Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。 classmates = ['Michael', 'Bob', 'Tracy'] print(classmates) # 计算长度 print(len(classmates)) # 用索引来访问list中每一个位置的元素,记得索引是从0开始的 print(classmates[0]) # ...
2018-05-24 17:28:50
238
转载 算法导论之红黑树算法java实现
/** * Java 语言: 红黑树 */ public class RBTree<T extends Comparable<T>> { private RBTNode<T> mRoot; // 根结点 private static final boolean RED = false; private static final boo...
2018-05-14 14:18:29
172
原创 算法导论之插入算法java实现
import java.util.Arrays; public class Main { public static void main(String[] args) { //插入算法 Integer[] A = {1,3,5,7,2,4,6,8,10,9}; for(int j=1;j<A.length;j++){ ...
2018-05-12 16:23:31
815
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人