- 博客(15)
- 收藏
- 关注
原创 分治策略求最大子数组
《算法导论》第四章 分治法所能解决的问题一般具有以下几个特征: 1. 该问题的规模缩小到一定的程度就可以容易地解决; 2. 该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质。 3. 利用该问题分解出的子问题的解可以合并为该问题的解; 4. 该问题所分解出的各个子问题是相互独立的,即子问题之间不包含公共的子子问题。使用分治策略有两个关键点:一是把分解成子问题,二是找准终止
2017-04-21 10:47:05 994 1
原创 确定n个元素的任何排序中逆序对数量
《算法导论》第三版 P24,2-4思考题list1 = [10,9,8,7,6,5,4,3,1,2];count = len(list1);def mergeSort(list0, i, j): inversionNum = 0 if i < j: k = (int)((i + j) / 2) inversionNum = inversionNum
2017-04-20 21:24:28 1427
原创 确定集合中是否存在两个其和刚好为X的元素?
《算法导论》第三版 P22,2.3-7练习题list1 = [1,2,3,4,5,6,7,8,10,19];count = len(list1);stack4 = []stack2 = []def bsf2(list0, start1, end1, start2, end2, a): flags = [False, False, False, False]; if
2017-04-20 19:57:45 769
原创 二分查找算法的递归与非递归实现
递归实现list1 = [1,2,3,4,5,6,7,8,9,10];count = len(list1);def rbs(list0, start, end, a): mid = (int)((start + end) / 2); if a == list0[mid]: return mid if start == mid and mid == end:
2017-04-20 11:57:42 1405
原创 用递归实现插入排序
list1 = [10,8,7,9,6,5,2,4,3,1];count = len(list1);def recursiveInsert(list0, len0): if len0 == 1: return recursiveInsert(list0, len0 - 1); index = len0 - 1; tmp = list0[index];
2017-04-20 10:22:02 3323
原创 归并排序
list1 = [10,8,7,9,6,5,2,4,3,1];count = len(list1);def mergeSort(list0, i, j): if i < j: k = (int)((i + j) / 2) mergeSort(list0, i, k) mergeSort(list0, k + 1, j) mer
2017-04-20 08:57:21 462
原创 选择排序
list1 = [10,8,7,9,6,5,2,4,3,1];count = len(list1);for i in range(0, count - 1): min = list1[i] n = i; for j in range(i + 1, count): if list1[j] < min: min = list1[j]
2017-04-20 08:55:02 624
原创 插入排序
代码块代码块语法遵循标准markdown代码,例如: “` pythonlist1 = [10,8,7,9,6,5,2,4,3,1]; count = len(list1); print(“Before:”); print(list1); for i in range(1, count): key = list1[i] j = i - 1 while j >=
2017-04-20 00:05:59 557
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2017-04-20 00:00:24 163
原创 如何选择职业方向?
跳槽的意义寻找到市场需求和自我实现的最佳匹配,从而在金钱和成长上双丰收。自我认识和自我实现你该去什么样的公司、做什么样的事情、拿多少钱,都取决于一个问题:你想成为一个什么样的人。工作只是人生的一部分,是用来支撑你人生价值的核心框架之一。先有一个清晰的人生规划,才能有一个清晰的职业规划。去创业公司还是大公司?我特别能解决问题,具有强烈的自我驱动力,最好去创业公司。因为那里会有更多的解决实际问题的机会...
2015-11-25 08:33:11 871
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人