目录
- 常用 ASCII 码表对照表:
- ord()函数介绍:
- 应用实例:
常用 ASCII 码表对照表:
注意如下几点:
0-9:48-57A-Z:65-90a-z:97-122

ord()函数介绍:
ord() 函数是 chr() 函数(对于 8 位的 ASCII 字符串)的配对函数,它以一个字符串(Unicode 字符)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值。
>>> ord('0')
48
>>> ord('A')
65
>>> ord('a')
97
应用实例:
ord()函数的一个应用场景就是,利用哈希表解决字母异位词问题。
利用ord()函数求解每个字母的ASCII数值,再利用每个字母和字母a之间的差值,将26个小写英文字母映射到下标分别为0-25的数组上,数组中存放的是每个字母的数目。
例如:

class Solution(object):
def findAnagrams(self, s, p):
"""
:type s: str
:type p: str
:rtype: List[int]
"""
result = []
record_s = [0]*26
record_p = [0]*26
if len(s) < len(p):
return result
for i in range(len(p)):
record_s[ord(s[i])-ord('a')] += 1
record_p[ord(p[i])-ord('a')] += 1
if record_s == record_p:
result.append(0)
for i in range(len(s)-len(p)):
record_s[ord(s[i])-ord('a')] -= 1
record_s[ord(s[i+len(p)])-ord('a')] += 1
if record_s == record_p:
result.append(i+1)
return result
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)