假如有两个字符串分别是:abcd,bbcd,那么,这两个字符串不相同的字符个数是1,即第一个字符时不相同的,定义字符串的相似度为 1 / (x + 1),其中,x 就是不相同的字符个数。 我们可以有三种方法比较两个字符串中不相同字符的个数: 1.去掉第一个字符串中不相同的那个字符,并同时再去比较下一个字符 2.去掉第二个字符串中不相同的那个字符,并同时再去比较下一个字...
分类:
其他好文 时间:
2014-10-19 15:43:01
阅读次数:
157
这也是一道很常见的题目,好多类似的题目用的也是同样的解法,这道题目的意思是,我们的手机上的数字键上面对应着英文字母,那么这个数字可能对应3个,也可能对应4个,也有可能对应0个,那么,当我输入一串数字后,需要给出所有这些数字可能对应的英文字母。 说到这里,相信大家也就明白了,这其实就是全排列,只不过我们首先需要给出已知条件,即数字对应着哪些字母,对应着几个字母,因为要做全排列,就一定要知道...
分类:
其他好文 时间:
2014-10-19 13:01:25
阅读次数:
178
这道题目的意思是给定一个字符串,作为源字符串,之后给出其他的字符串,确定源字符串是否能够经过旋转而得到给定的字符串,即移位包含问题。 假如,给定一个字符串 abcdefg,接着给定字符串 cdefgab,很显然,给定的字符串是可以经过源字符串旋转而得到的,但是,给定字符串 cdegfab 就不能由源字符串经过旋转而得到。 当然,这道题有很多解法,我们可以经过判断字符串中字符的位...
分类:
其他好文 时间:
2014-10-17 20:35:50
阅读次数:
137
这是一个很经典的题目,题目的大概意思是这样的: 有一个存储字符串的数组,需要按照要求循环移动数组中的字符,例如,数组中存储字符 abcd1234,循环右移4位,之后,会得到这样一个字符数组 1234abcd,当然,左移也是同样的解法 想想这个问题不是很难,顺序依次移动就可以了,这样做的话,时间复杂度是O(n2)量级的,那么,有没有更快的方法呢? 首先,我们需要对数组的...
分类:
编程语言 时间:
2014-10-16 17:33:32
阅读次数:
204
思路: 1.将数组排序, 2.a 遍历 数组a[0]....a[n-1]; 3.当 a=a[i] 时 后面的问题 就是 : a[i+1] 到 a[n-1]中 b+c =-a (编程之美2.12 快速寻找满足条件的两个数 ) 记 b=a[j]=a[i...
分类:
其他好文 时间:
2014-10-16 17:13:32
阅读次数:
226
我阅读的课外书籍是《编程之美》,《编程之美》是一本很好的书,作者试图从书中各种有趣的问题出发,引导读者发现问题,分析问题,解决问题,寻找更优的解法。在阅读过程中,加深了我对代码的认识,充分享受到了学习和编程的乐趣。以下是我在学习过程中遇到的问题与探索:1、在买书问题中,采取什么样的贪心算法最优?.....
分类:
其他好文 时间:
2014-10-16 14:16:32
阅读次数:
173
这道题目要求返回一个数字,这个数字代表一个数组中最长的递增子序列,当然,不要求这个序列是连续的,比如,有这样一个数组:{1, 3,5,7, 2, 9},那么这个数组的最长递增子序列就是5,即1, 3, 5, 7,9 解决这道题目的思想就是:后面的数字只要是大于前面递增子序列的最大值,那么,它就一定大于前面所有的序列,既然需要知道前面保存的序列,那么,我们这里就需要一个辅助数组,数组...
分类:
其他好文 时间:
2014-10-16 12:26:32
阅读次数:
146
我选择阅读的数是《编程之美》,自己的编程能力和算法理解尚且粗浅,看起来感觉问题很吸引人但是书上提到的想法会比较难去理解,在读书的过程中我也发现现在我思考问题的时候往往也只是偏向于普通的解法而不能再优化上有所多思,类似的书籍还是能帮助自己提升这方面的能力,所以多多益善。 读书的时候自己也会有很多...
分类:
其他好文 时间:
2014-10-16 03:20:41
阅读次数:
201
我阅读的书是《编程之美》刚开始的时候阅读序,就觉得控制cpu利用率这个问题很好玩,所以重点看了这部分和解决办法,问题也都大部分是这部分的。那么问题就来了(挖掘机技术xxx?中国山东找蓝翔)咳咳,问题在下面:1.关于问题的提出。(也是一点点建议) 本书的主要内容是告诉读者如何思考问题和解决问题。但是....
分类:
其他好文 时间:
2014-10-16 01:45:01
阅读次数:
296
首先,我们看到这篇文章的题目,我们就会想到之前的那个题目 -- 连续子数组最大和问题。这个问题无疑就是把原问题扩展到二维的情况。 想起来这个问题也不是很难,我们可以求解一维矩阵的思想,即我们可以固定住行(或列),之后,我们去求解列(或行)所构成的最大和就可以了。 这里的解法利用的是固定住行,然后求解需要寻找的列之和,利用书中提到的一个公式: 以左上角的元素(1,1)和当前元素(i,j)为...
分类:
编程语言 时间:
2014-10-15 20:03:31
阅读次数:
225