原文:libmxml數據結構(源碼分析)

libmxml是一個開源 小巧的C語言xml庫。這里簡單分析一下它是用什么樣的數據結構來保存分析過的xml文檔。 mxml關鍵的結構體mxml node t是這樣的實現的: 它使用左孩子右兄弟的樹形結構來描述xml報文:即下層節點登記在child鏈表,兄弟節點登記在next鏈表。 如果某個節點下面有N個子節點,則child指向第一個子節點,該子節點的next指向下一個同父節點的子節點。 比較特殊 ...

2019-04-05 20:08 0 531 推薦指數:

查看詳情

ffplay源碼分析2-數據結構

ffplay是FFmpeg工程自帶的簡單播放器,使用FFmpeg提供的解碼器和SDL庫進行視頻播放。本文基於FFmpeg工程4.1版本進行分析,其中ffplay源碼清單如下: https://github.com/FFmpeg/FFmpeg/blob/n4.1/fftools/ffplay.c ...

Tue Jan 22 05:55:00 CST 2019 0 2294
HashMap、ConcurrentHashMap數據結構、底層原理、源碼分析

HashMap 數據結構 JDK1.7 HashMap由數組+鏈表組成,數組是HashMap的主體,鏈表則是主要為了解決哈希沖突而存在的。 JDK1.8 HashMap由數組+鏈表/紅黑樹組成,當鏈表長度大於閾值(默認為8)時,將鏈表轉化為紅黑樹,以減少搜索 ...

Sat Apr 11 23:59:00 CST 2020 0 596
Redis源碼分析-底層數據結構盤點

前段時間翻看了Redis的源代碼(C語言版本,Git地址:https://github.com/antirez/redis), 過了一遍Redis數據結構,包括SDS、ADList、dict、intset、ziplist、quicklist、skiplist。 在此進行總結 一、SDS ...

Wed May 15 22:55:00 CST 2019 0 1497
句柄與句柄表(數據結構源碼分析

0x01 句柄,句柄表概念    任意進程,只要每打開一個對象,就會獲得一個句柄,這個句柄用來標志對某個對象的一次打開,通過句柄,可以直接找到對應的內核對象。句柄本身是進程的句柄表中的一個結構體,用來描述一次打開操作。句柄值則可以簡單看做句柄表中的索引,並不影響理解。HANDLE的值可以簡單 ...

Tue Jan 23 01:05:00 CST 2018 0 1854
鴻蒙輕內核M核源碼分析數據結構之任務就緒隊列

摘要:本文會給讀者介紹鴻蒙輕內核M核源碼中重要的數據結構,任務基於優先級的就緒隊列Priority Queue。 本文分享自華為雲社區《鴻蒙輕內核M核源碼分析系列三 數據結構-任務就緒隊列》,原文作者:zhushy 。 本文會給讀者介紹鴻蒙輕內核M核源碼中重要的數據結構,任務基於優先級 ...

Tue May 18 22:44:00 CST 2021 0 203
Java ArrayList源碼分析(有助於理解數據結構

arraylist源碼分析 1.數組介紹 數組是數據結構中很基本的結構,很多編程語言都內置數組,類似於數據結構中的線性表 在java中當創建數組時會在內存中划分出一塊連續的內存,然后當有數據進入的時候會將數據按順序的存儲在這塊連續的內存中。當需要讀取數組中的數據時,需要提供數組中的索引 ...

Fri Sep 13 06:05:00 CST 2019 2 389
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM