- 博客(8)
- 收藏
- 关注
原创 回文判断
问题描述 给定一个字符串,如何判断这个字符串是否是回文串 算法思路 从字符串的两头同时往中间逐次扫描,比较两端的字符是否相同,如果有不同的就认为不是回文串 代码实现def is_palindrome(string): length = len(string) for i in range(length/2): if string[i] != string[le
2016-02-29 18:40:30 393
原创 寻找和为定值的组合
问题描述 给定一个数组,找出数组中所有任意两数之和等于M的组合 算法思路 可以利用hash来实现高效的查找。首先,将数组映射到哈希表里。然后,针对每个数N依次在哈希表里查找M-N。如果存在,则找到了一个满足条件的组合,否则,继续查找。这个算法的时间复杂度为O(n)O(n) 代码实现
2016-02-29 18:30:18 623
原创 字符串转换成整数
问题描述 输入一个由数字组成的字符串,输出该字符串对应的整数 算法思路 从左向右依次扫描字符串中的每个字符,把之前扫面得到的数字乘以10,再加上当前字符表示的数字。 这个问题中需要注意:字符串中可能包含正负号;非法输入;对于C/C++实现,还需要考虑整数越界的问题。 代码实现def str2int(str): length = len(str) if length ==
2016-02-26 13:54:06 372
原创 字符串全排列问题
问题描述 输入一个字符串,打印出该字符串中字符的所有排列 算法思路 通过递归的方法来实现。从字符串中选出一个字符作为排列的第一个字符,然后对剩余的字符进行全排列。如此递归处理。 代码实现def premutation(str): length = len(str) if length == 1: return [str] array = []
2016-02-26 09:28:16 379
原创 字符串包含问题
问题描述 快速判断出短字符串b中的所有字符是否都在长字符串a中?(这里假设字符串中只包含大写字母) 算法思路 首先,将长字符串a映射为一个26位的二进制数,一个位置对应一个字母,如果a中存在某个字母,则该字母所对应的位置置为1,否则置为0。然后,对b中的字符依次进行查找。 代码实现def match(a, b): base = ord('A') str_hash = redu
2016-02-26 00:31:06 306
原创 字符串的旋转
问题描述 输入:I am a student. 输出:student. a am I 算法思路 (1)首先,根据空格将原字符串分为A、B、C、D四个部分,其中A为“I“,B为“am“,C为“a“,D为“students.“。 (2)将A、B、C、D的所有字符反转,即“I“变成“I“,“am“变成“ma“,“a“变成“a“,“students.“变成“.stneduts“。
2016-02-25 22:07:54 280
原创 安装pillow错误的解决方案
错误信息: ValueError: jpeg is required unless explicitly disabled using --disable-jpeg, aborting ---------------------------------------- Command "/usr/bin/python -c "import setuptools, token
2016-02-18 08:38:10 6796
原创 centos7引导项修复
每次装了双系统,都会发现原来的windows引导项不见了,这让我这个windows重度依赖者情何以堪,所以,必须要把我挚爱的windows给找回来。 翻看了一些网上的教程,看来这并不是一个困难的问题。 这种问题出现的根本原因就是centos无法识别windows的文件系统,就是ntfs格式。 现在问题的解决方法就显而易见了。 解决步骤: 1. 添加EPEL源(ntfs-3g在该源
2016-02-06 18:26:45 1396
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人