张三丰安排刷题
文章目錄
- 翻轉(zhuǎn)字符串
涉及復(fù)雜度用c語言編,沒有要求的用python編。
翻轉(zhuǎn)字符串
"""aim:翻轉(zhuǎn)字符串,如'abcde'翻轉(zhuǎn)為edcba要求:語言:c(python如果調(diào)用底層,未知,可先不考慮復(fù)雜度)空間復(fù)雜度為o(1)請寫出思路求其時空復(fù)雜度"""# python方法一strs = 'abcde'aim = []for i in reversed(strs):aim.append(i)print(''.join(aim))# python方法二strs = 'abcde'strList = strs.split() # 將輸入的字符串用空格分隔為列表resList = strList[::-1] # 將列表反轉(zhuǎn)print("".join(resList)) # 打印結(jié)果# c方法三"""時間維度:是指執(zhí)行當(dāng)前算法所消耗的時間,我們通常用「時間復(fù)雜度」來描述。空間維度:是指執(zhí)行當(dāng)前算法需要占用多少內(nèi)存空間,我們通常用「空間復(fù)雜度」來描述。時間復(fù)雜度:公式:T(n) = O(f(n)),其中f(n)表示每行代碼執(zhí)行次數(shù)之和,而O表示正比例關(guān)系O(1): 無論代碼執(zhí)行了多少行,只要是沒有循環(huán)等復(fù)雜結(jié)構(gòu),那這個代碼的時間復(fù)雜度就都是O(1)線性階O(n):for i in range(n): # O(n)print('Hello world')平方階O(n2): for i in range(n): # O(n^2)for j in range(n):print('Hello world') 空間復(fù)雜度:算法在運行過程中臨時占用的存儲空間大小,即程序中變量的個數(shù),同樣反映的是一個趨勢O(1)-如果算法執(zhí)行所需要的臨時空間不隨著某個變量n的大小而變化,即此算法空間復(fù)雜度為一個常量O(n)-列表的空間復(fù)雜度為列表的長度# 空間復(fù)雜度為1a = 'Python'b = 'PHP'c = 'Java'# 空間復(fù)雜度為5 num = [1, 2, 3, 4, 5] """ 《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
- 上一篇: tessorflow实战
- 下一篇: python常用导入函数及其他操作备忘录