當你決定看這篇文章,就意味著系統學習資料結構的開始。本節,我們先來講什麼是資料結構。
什麼是資料結構
資料結構,直白地理解,就是研究資料的儲存方式。
我們知道,資料儲存只有乙個目的,即為了方便後期對資料的再利用,就如同我們使用陣列儲存 是為了後期取得它們的加和值,無緣由的資料儲存行為是對儲存空間的不負責任。
因此,資料在計算機儲存空間的存放,決不是胡亂的,這就要求我們選擇一種好的方式來儲存資料,而這也是資料結構的核心內容。
例如,一直以來大家面對的資料儲存,都是類似儲存 1、2、 這樣的問題,解決方式無疑是用變數或者陣列對資料進行儲存,即:
int a=1;
int b=2;
char str[3]=;
但是,如果要儲存這樣一組資料:,資料之間具有這樣的關係:張亮是張平、張華和張群的父親,同時張平還是張晶和張磊的父親,資料之間的關係如圖 1 所示:
圖 1 資料及資料之間的關係
對於儲存之間具有複雜關係的資料,如果還是用變數或陣列來儲存(比如用陣列儲存 ),資料儲存是沒有問題,但是無法體現資料之間的邏輯關係,後期根本無法使用,顯然不明智。
針對此類資料,資料結構中提供有專門的樹結構來儲存這類資料。
再比如,導航無疑是出遊旅行的必備神器,在我們程式設計師眼中,無論是哪款導航軟體,其導航功能的實現都需要大量地圖資料的支援。很明顯,這些資料絕不是使用變數或陣列進行儲存的,那樣對於資料的使用簡直是個悲劇。
針對此類資料,資料結構提供了圖儲存結構,專門用於儲存這類資料。
通過以上兩個示例可以體會出,資料結構教會我們的絕不僅僅是如何儲存 1、2、 這樣簡單的資料,而是解決具有複雜關係的大量資料的儲存問題。
因此,資料結構是什麼? 我認為,資料結構是一門學科,它教會我們「如何儲存具有複雜關係的資料更有助於後期對資料的再利用」。
pandas資料結構介紹
pandas是基於numpy構建的,它以numpy為中心的應用變得更加簡單。pandas的資料結構介紹 series最重要的乙個功能是 它在算術運算中會自動對齊不同索引的資料。series物件及其索引都有乙個name屬性,該屬性跟pandas其他的關鍵功能關係非常密切 series的索引可以通過賦值...
HashSet資料結構介紹
hashset無參建構函式 hashset的預設建構函式,實際是創造乙個hashmap物件 public hashset 因為hashmap的擴充套件因子是0.75,及當0.75時就自動擴充套件,用構造的函式集合大小去初始 化hashmap,用擴 展集合的大小除以0.75 1與16比較,取較大的值作...
資料結構 基礎介紹
資料結構是一門研究非數值計算的程式設計問題中計算機的操作物件以及它們之間的關係和操作的學科。主要分類 資料的邏輯結構 資料的儲存結構及其對應的演算法 涵蓋內容聯絡圖 1.資料 data 資料是對資訊的一種符號表示,是輸入到計算機中並被電腦程式處理的符號的總稱。包括文字 圖象等。2.資料元素 data...