1.數(shù)據(jù)結(jié)構(gòu)

設(shè)計(jì)一個(gè)良好的數(shù)據(jù)結(jié)構(gòu)(Data Structures)在實(shí)現(xiàn)比較復(fù)雜的邏輯時(shí)是有意義的。

一個(gè)良好的數(shù)據(jù)結(jié)構(gòu),是需要在:便于程序員的理解與操作、減少系統(tǒng)內(nèi)存的占用和代碼執(zhí)行的效率三者之間相互平衡與取舍的。我們需要根據(jù)自己的實(shí)際需求來平衡這三者。

相較于Java中的POJO,python對于復(fù)雜數(shù)據(jù)結(jié)構(gòu)的定義則十分乏力

設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)的三個(gè)步驟

  1. 列出需要在數(shù)據(jù)結(jié)構(gòu)上執(zhí)行的操作

  2. 頭腦風(fēng)暴一些數(shù)據(jù)結(jié)構(gòu)

  3. 通過檢查需要執(zhí)行的操作來評(píng)估每種數(shù)據(jù)結(jié)構(gòu)

在這個(gè)階段,你需要了解代碼是否易于編寫,并且就 CPU 和內(nèi)存的使用而言,性能是否能滿足需求。

良好的數(shù)據(jù)結(jié)構(gòu)可能是干凈的、可維護(hù)的、無缺陷的代碼庫與垃圾代碼庫之間的區(qū)別。

參考文章:
3 步設(shè)計(jì)出更好的數(shù)據(jù)結(jié)構(gòu)【英文】
3 步設(shè)計(jì)出更好的數(shù)據(jù)結(jié)構(gòu)【中文】
知乎|使用python實(shí)現(xiàn)java的pojo

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1. 前言 對于一名有追求的程序猿來說,數(shù)據(jù)結(jié)構(gòu)和算法是一門必修課,它是內(nèi)功,內(nèi)功的深厚直接決定了解決問題的能力和...
    唐江旭閱讀 761評(píng)論 2 1
  • 算法的評(píng)估:正確性、可讀性、健壯性(對不合理輸入的處理能力) 時(shí)間復(fù)雜度:估算程序指令執(zhí)行的次數(shù) 空間復(fù)雜度:估算...
    LucXion閱讀 654評(píng)論 0 0
  • 1.數(shù)據(jù)結(jié)構(gòu)的概念 存儲(chǔ)數(shù)據(jù)和數(shù)據(jù)之間的關(guān)系的一個(gè)集合。不僅存儲(chǔ)數(shù)據(jù),還支持?jǐn)?shù)據(jù)的訪問和操作(添加,刪除)。 Ja...
    a9f9e33f60c3閱讀 844評(píng)論 0 0
  • 數(shù)據(jù)結(jié)構(gòu) 邏輯結(jié)構(gòu) 是指數(shù)據(jù)對象中數(shù)據(jù)元素之間的相互關(guān)系 集合結(jié)構(gòu):數(shù)據(jù)元素出了同屬于一個(gè)集合外,他們之間沒有其他...
    一世長安亂閱讀 198評(píng)論 0 0
  • 一、入門 1.數(shù)據(jù)結(jié)構(gòu)與算法 1.從廣義上來講,數(shù)據(jù)結(jié)構(gòu)就是一組數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu),算法就是操作數(shù)據(jù)的一種方法。 數(shù)據(jù)...
    夜長夢還多io閱讀 277評(píng)論 0 0

友情鏈接更多精彩內(nèi)容