算法
星星浩然
本人理工男,计算机科学技术专业,主要研究图像识别、机器学习方面。从事电信相关行业,个人喜欢阅读、历史、投资、IT技术。
请各位朋友多加关照!欢迎扫描头像二维码关注微信订阅号(或微信搜索“星星浩然”)。
展开
-
查找最长回文
首先用一个非常巧妙的方式,将所有可能的奇数/偶数长度的回文子串都转换成了奇数长度:在每个字符的两边都插入一个特殊的符号。比如 abba 变成 #a#b#b#a#, aba变成 #a#b#a#。 为了进一步减少编码的复杂度,可以在字符串的开始加入另一个特殊字符,这样就不用特殊处理越界问题,比如$#a#b#a#。 下面以字符串12212321为例,经过上一步,变成了 S[] = "$#1#2#2原创 2013-04-29 20:11:35 · 778 阅读 · 0 评论 -
全排列问题问题的两种算法--递归与字典序
本文描述全排列问题的递归算法与排序算法。 递归算法 递归算法的原理是,对于给定的集合{1, 2, 3, 4},首先以{1}作为开头,求解集合{ 2, 3, 4}的排列。求解集合{2, 3, 4}的排列时,首先以{2}作为开头,求解集合{3, 4}的排列。求解集合{3, 4}的排列时,先求解以{3}开头的排列,然后求解以{4}开头的排列。至此可以求得排列1 2 3 4和1 2 4 3。以原创 2013-04-21 10:48:51 · 2176 阅读 · 0 评论