张三丰安排刷题
文章目录
- 翻转字符串
涉及复杂度用c语言编,没有要求的用python编。
翻转字符串
"""aim:翻转字符串,如'abcde'翻转为edcba要求:语言:c(python如果调用底层,未知,可先不考虑复杂度)空间复杂度为o(1)请写出思路求其时空复杂度"""# python方法一strs = 'abcde'aim = []for i in reversed(strs):aim.append(i)print(''.join(aim))# python方法二strs = 'abcde'strList = strs.split() # 将输入的字符串用空格分隔为列表resList = strList[::-1] # 将列表反转print("".join(resList)) # 打印结果# c方法三"""时间维度:是指执行当前算法所消耗的时间,我们通常用「时间复杂度」来描述。空间维度:是指执行当前算法需要占用多少内存空间,我们通常用「空间复杂度」来描述。时间复杂度:公式:T(n) = O(f(n)),其中f(n)表示每行代码执行次数之和,而O表示正比例关系O(1): 无论代码执行了多少行,只要是没有循环等复杂结构,那这个代码的时间复杂度就都是O(1)线性阶O(n):for i in range(n): # O(n)print('Hello world')平方阶O(n²): for i in range(n): # O(n^2)for j in range(n):print('Hello world') 空间复杂度:算法在运行过程中临时占用的存储空间大小,即程序中变量的个数,同样反映的是一个趋势O(1)-如果算法执行所需要的临时空间不随着某个变量n的大小而变化,即此算法空间复杂度为一个常量O(n)-列表的空间复杂度为列表的长度# 空间复杂度为1a = 'Python'b = 'PHP'c = 'Java'# 空间复杂度为5 num = [1, 2, 3, 4, 5] """ 《新程序员》:云原生和全面数字化实践50位技术专家共同创作,文字、视频、音频交互阅读总结
- 上一篇: tessorflow实战
- 下一篇: Tensorflow基于minist数据