目录 1 问题描述 2 解决方案 2.1 递归实现 2.2 字典序排列实现 1 问题描述 输入一个字符串,打印出该字符串的所有排列。例如,输入字符串”abc”,则输出有字符’a’,’b’,’c’所能排列出来的所有字符串”abc”,”acb”,”bac”,”bca”,”cab”,”cba”。 2 解决 ...
分类:
编程语言 时间:
2017-02-13 21:35:04
阅读次数:
183
目录 1 问题描述 2 解决方案 2.1 基于减治法实现 2.2 基于深度优先查找实现 1 问题描述 给定一个有向图,求取此图的拓扑排序序列。 那么,何为拓扑排序? 定义:将有向图中的顶点以线性方式进行排序。即对于任何连接自顶点u到顶点v的有向边uv,在最后的排序结果中,顶点u总是在顶点v的前面。 ...
分类:
编程语言 时间:
2017-02-11 17:47:32
阅读次数:
297
目录 1 问题描述 2 解决方案 2.1 蛮力移位 2.2 三步反转 1 问题描述 给定一个字符串,要求将字符串前面的若干个字符移到字符串的尾部。例如,将字符串“abcdef”的前3个字符‘a’、‘b’和‘c’移到字符串的尾部,那么原字符串将变成“defabc”。请写一个函数实现此功能。 2 解决方 ...
分类:
编程语言 时间:
2017-02-09 21:37:36
阅读次数:
153
目录 1 问题描述 2 解决方案 2.1 蛮力法 1 问题描述 何为旅行商问题?按照非专业的说法,这个问题要求找出一条n个给定的城市间的最短路径,使我们在回到触发的城市之前,对每个城市都只访问一次。这样该问题就可以表述为求一个图的最短哈密顿回路的问题。(哈密顿回路:定义为一个对图的每个顶点都只穿越一 ...
分类:
编程语言 时间:
2017-02-06 19:53:46
阅读次数:
372
目录 1 问题描述 2 解决方案 2.1 问题化简 2.2 定位输出测试 2.3 回顾总结 1 问题描述 最近两天在思考如何使用蛮力法解决旅行商问题(此问题,说白了就是如何求解n个不同字母的所有不同排序的序列问题,即共有n!次不同排序)。 为此,我认真看了一篇出自CSDN上的博客文章,其中有一段核心 ...
分类:
编程语言 时间:
2017-02-05 20:26:29
阅读次数:
308
KMP的笔记,用于防止忘记后重新折腾,因为过程实在太痛苦。都痛苦好几次了,细节很重要啊很重要。。。 ...
分类:
编程语言 时间:
2017-01-25 10:40:35
阅读次数:
206
目录 1 问题描述 2 解决方案 2.1 蛮力法 1 问题描述 给定一个平面上n个点的集合,它的凸包就是包含所有这些点的最小凸多边形,求取满足此条件的所有点。 另外,形象生动的描述: (1)我们可以把这个问题看作如何用长度最短的栅栏把n头熟睡的老虎围起来。 (2)也可以这样看:请把所讨论的点想象成钉 ...
分类:
编程语言 时间:
2017-01-23 18:56:21
阅读次数:
267
目录 1 问题描述 2 解决方案 2.1 快速排序原理简介 2.2 具体编码 1 问题描述 给定一组数据,使用快速排序得到这组数据的非降序排列。 2 解决方案 2.1 快速排序原理简介 引用自百度百科: 快速排序(Quicksort)是对冒泡排序的一种改进。 快速排序由C. A. R. Hoare在 ...
分类:
编程语言 时间:
2017-01-14 20:14:03
阅读次数:
259
目录 1 问题描述 2 解决方案 2.1 递归法 2.2 非递归法 1 问题描述 Simulate the movement of the Towers of Hanoi Puzzle; Bonus is possible for using animation. e.g. if n = 2 ; A ...
分类:
编程语言 时间:
2017-01-07 00:55:34
阅读次数:
212
1 问题描述 Compute the Greatest Common Divisor of Two Integers using Sieve of Eratosthenes. 翻译:使用埃拉托色尼筛选法计算两个整数的最大公约数。(PS:最大公约数也称最大公因数,指两个或多个整数共有约数中最大的一个) ...
分类:
编程语言 时间:
2016-12-29 23:29:32
阅读次数:
189