一篇文章帶你入門Java數(shù)據(jù)結構
1、邏輯結構和物理結構
邏輯結構:
集合: 數(shù)據(jù)與數(shù)據(jù)之間沒有任何關系
線性: 一對一關系
樹型: 一對多關系
圖型: 多對多關系
物理結構:
順序結構(數(shù)組):
鏈式結構(鏈表):
2、順序結構,鏈式結構,棧,隊列,二叉樹
順序結構:
可擴容數(shù)組,底層用數(shù)組實現(xiàn),順序排列,標號連續(xù),內(nèi)存空間連續(xù)
優(yōu)缺點:
查詢速度快,在中間頻繁的增刪操作慢,碎片內(nèi)存空間利用不到
鏈式結構:
底層用節(jié)點(Object date 和 前后節(jié)點或者下一個結點的引用)
內(nèi)存順序連續(xù),但是在物理存儲空間不連續(xù)
優(yōu)缺點:
頻繁的增刪操作速度快,查詢速度慢,綜合起來沒有ArrayList好,空間利用率好,可以利用到物理內(nèi)存中的碎片空間
棧:
可以用數(shù)組或者鏈表實現(xiàn),先進后出原則
方法:
push()壓棧 和 pop()彈棧
隊列:
可以用數(shù)組或者鏈表實現(xiàn),先進先出原則
二叉樹
普通二叉樹:
滿二叉樹:
完全二叉樹:
k - 1 層是滿二叉樹,k 層從左到右是連續(xù)的
平衡二叉樹:
左右子樹高度相差不超過1
排序二叉樹:
左子樹的值都小于根,右子樹的值都大于等于根
二叉樹的遍歷:
先序遍歷 - 根左右
中序遍歷 - 左根右
后序遍歷 - 左右根
總結
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注腳本之家的更多內(nèi)容!
相關文章
Springdoc替換swagger的實現(xiàn)步驟分解
最近在spring看到的,spring要對api文檔動手了,有些人說swagger不好用,其實也沒那么不好用,有人說代碼還是有點侵入性,這倒是真的,我剛試了springdoc可以說還是有侵入性但是也可以沒有侵入性,這就看你對文檔有什么要求了2023-02-02Eclipse 2020-06 漢化包安裝步驟詳解(附漢化包+安裝教程)
這篇文章主要介紹了Eclipse 2020-06 漢化包安裝步驟(附漢化包+安裝教程),本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08Spring處理@Async導致的循環(huán)依賴失敗問題的方案詳解
這篇文章主要為大家詳細介紹了SpringBoot中的@Async導致循環(huán)依賴失敗的原因及其解決方案,文中的示例代碼講解詳細,感興趣的可以學習一下2022-07-07SpringMVC打印請求參數(shù)和響應數(shù)據(jù)最優(yōu)方案
項目中經(jīng)常需要打印http請求的參數(shù)和響應數(shù)據(jù),本文給大家講解如何在SpringMVC打印請求參數(shù)和響應數(shù)據(jù)最優(yōu)方案,感興趣的朋友跟隨小編一起看看吧2023-07-07Spring注解@Value在controller無法獲取到值的解決
這篇文章主要介紹了Spring注解@Value在controller無法獲取到值的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11