python内置函数值 -- chr() ord()

chr()接收一个数字, 找到这个数字对应的ascii里的元素(只能接受数字)

a = chr(65)
print(a) #结果: A

  

ord()接收一个字符,返回这个字符对应的数字.(只能接受一个字符)

b = ord('a')
print(b) #结果: 97

  

举例:实现字符串的反转,要求不使用任何系统方法,且时间复杂度最小

思路:异或
时间复杂度O(N)
不需要中间变量

代码如下:

def reverseStr(str):
lens = len(str)
ch = list(str)
i = 0
j = lens-1
while i < j:
ch[i] = chr(ord(ch[i])^ord(ch[j]))
ch[j] = chr(ord(ch[i])^ord(ch[j]))
ch[i] = chr(ord(ch[i])^ord(ch[j]))
i += 1
j -= 1
return ''.join(ch) res = reverseStr('abc')
print(res)

结果:cba

上一篇:php判断是否为命令行模式


下一篇:[AHOI2015 Junior] [Vijos P1943] 上学路上 【容斥+组合数】