算法
yang_9613
明日复明日 明日何其多
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
各种排序算法的原理、实现及其时间复杂度
1、冒泡排序 原理: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较 实现: 以数组{2,1,5,4,3}为例,实现过程如下图所示 代码: publi原创 2017-03-25 20:10:28 · 1062 阅读 · 0 评论 -
字符串调整
今天听左大神讲了一个和字符串有关的问题感觉挺有意思的决定把它实现一下。 题目:给定一个字符串str,和一个整数i,i代表str中的位置,将str[0,i]移到右侧,str[i+1,N-1]移到左侧(N为字符串长度)。 举例:str=“ABCDE”,i=2,将str调整为“DEABC”。 要求:时间复杂度为O(n),额外时间复杂度为O(1)。 解题思路: (1)将str[0,i]部分的字符原创 2017-03-24 22:17:46 · 629 阅读 · 0 评论
分享