成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

《算法圖解》第四章第一節(jié)練習(xí)

niceforbear / 934人閱讀

摘要:請編寫前述函數(shù)的代碼。編寫一個(gè)遞歸函數(shù)來計(jì)算列表包含的元素?cái)?shù)。找出列表中最大的數(shù)字還記得第章介紹的二分查找嗎它也是一種分而治之算法。你能找出二分查找算法的基線條件和遞歸條件嗎參考

4.1請編寫前述sum函數(shù)的代碼。
def diy_sum(arr):
if not arr:
    return 0
elif len(arr) == 1:
    return arr[0]
else:
    return arr.pop(0) + diy_sum(arr)


arr = [1, 2, 3]
print(diy_sum(arr))
4.2編寫一個(gè)遞歸函數(shù)來計(jì)算列表包含的元素?cái)?shù)。
def count_elements(list):
if not list:
    return None
elif len(list) == 1:
    return 1
else:
    return 1 + count_elements(list[1:])


list = [1, 2, 3]
print(count_elements(list))
4.3找出列表中最大的數(shù)字

def bigger(int1, int2):

if int1 >= int2:
    return int1
else:
    return int2

def find_biggest(list):

if not list:
    return None
elif len(list) == 1:
    return list[0]
elif len(list) == 2:
    return bigger(list[0], list[1])
else:
    return bigger(list[0], find_biggest(list[1:]))


list = [1, 5, 3, 2]
print(find_biggest(list))
4.4 還記得第1章介紹的二分查找嗎?它也是一種分而治之算法。你能找出二分查找算法的基線條件和遞歸條件嗎?
def binary_search_basic(list, target, low, high):
if low > high:
    return None
else:
    mid = int((low + high) / 2 + 0.5)
    guess = list[mid]
    if guess == target:
        return mid
    elif guess > target:
        high = mid - 1
        return binary_search_basic(list, target, low, high)
    else:
        low = mid + 1
        return binary_search_basic(list, target, low, high)


def binary_search_dc(list, target):
    return binary_search_basic(list, target, 0, len(list) - 1)

list = [1, 2, 3, 4, 5]
target = 3
print(binary_search_dc(list, target))

參考:
https://blog.csdn.net/XIAOZHI...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/44021.html

相關(guān)文章

  • 可能是全網(wǎng)把 ZooKeeper 概念講的最清楚的一篇文章

    摘要:的設(shè)計(jì)目標(biāo)是將那些復(fù)雜且容易出錯(cuò)的分布式一致性服務(wù)封裝起來,構(gòu)成一個(gè)高效可靠的原語集,并以一系列簡單易用的接口提供給用戶使用。具有不可分割性即原語的執(zhí)行必須是連續(xù)的,在執(zhí)行過程中不允許被中斷。 該文已加入開源文檔:JavaGuide(一份涵蓋大部分Java程序員所需要掌握的核心知識)。地址:https://github.com/Snailclimb... showImg(https:...

    DrizzleX 評論0 收藏0
  • 關(guān)于Python的三個(gè)謊言,別再盲目學(xué)Python了

    摘要:關(guān)于的三個(gè)謊言,你一定要清楚。這是的整個(gè)知識體系圖譜,對于新手來說,沒必要學(xué)那么多。第四自動化測試一切關(guān)于自動化的東西,似乎都可以滿足,可以滿足大多數(shù)自動化工作,提升工作效率。這都是正常的,千萬別急著否定自己,懷疑自己。 ...

    TZLLOG 評論0 收藏0
  • iKcamp出品微信小程序教學(xué)共5章16小節(jié)匯總(含視頻)

    摘要:微信小程序課程,面向所有具備前端基礎(chǔ)知識的同學(xué)閱讀要求讀者需要具備但不限于以下技能更佳一共四部分十五小節(jié),適合七天的訓(xùn)練營。 ?? 微信小程序課程,面向所有具備前端基礎(chǔ)知識的同學(xué) ?? 閱讀要求 讀者需要具備但不限于以下技能 HTML JavaScript es6更佳 CSS 一共四部分十五小節(jié),適合七天的訓(xùn)練營。 從現(xiàn)在開始,我假裝你已經(jīng)掌握了 html、 css以及 ES6...

    elliott_hu 評論0 收藏0
  • iKcamp出品微信小程序教學(xué)共5章16小節(jié)匯總(含視頻)

    摘要:微信小程序課程,面向所有具備前端基礎(chǔ)知識的同學(xué)閱讀要求讀者需要具備但不限于以下技能更佳一共四部分十五小節(jié),適合七天的訓(xùn)練營。 ?? 微信小程序課程,面向所有具備前端基礎(chǔ)知識的同學(xué) ?? 閱讀要求 讀者需要具備但不限于以下技能 HTML JavaScript es6更佳 CSS 一共四部分十五小節(jié),適合七天的訓(xùn)練營。 從現(xiàn)在開始,我假裝你已經(jīng)掌握了 html、 css以及 ES6...

    paney129 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<