[問題] 序列化
寫題目的時候遇到序列化的問題,
查了很久還是不清楚到底什麼是序列化,
想問問大家我對序列化的了解是否正確。
目前了解要序列化是因為舉例來說像是 int 在不同編譯器或者系統就會有
不同的 machine code,或者一些資料結構的狀態不好直接儲存,
所以轉成一個方便的格式來儲存,傳輸。
然後我看到序列化就是把資料轉成 a squence of bits,
我的理解是 like 0101010111111110100 這樣,
但我看到題目是把 binary tree 轉成 "[1,2,3,null,null,4,5]" 的字串形式,
還有像是現在網路傳輸,很多序列化也是轉成JSON字串,
這裡我理解是因為原本 tree 的結構不好被儲存,
轉成字串形式就很好儲存,也能依此還原出 tree。
但這個步驟好像比較像是把不好儲存的狀態轉成一個好儲存的格式,
跟轉成 a squence of bits 好像沒什麼關係?
1. 是因為最終這個 string 會被轉成 010101001000 的格式所以也算有轉成
a seq of bits嗎?
2. 如果是這樣,想請問除了序列化成字串以外,還可以序列化成什麼?
可以序列化成 array of char 嗎,因為 array contiguous 然後 char 都是 1 Byte
如果有理解錯誤,或問題怪怪的,
還麻煩指正一下,感謝~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.24.9.88
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1554313173.A.8BD.html
※ 編輯: AirWall (114.24.9.88), 04/04/2019 01:41:25
→
04/04 02:37,
5年前
, 1F
04/04 02:37, 1F
→
04/04 02:37,
5年前
, 2F
04/04 02:37, 2F
→
04/04 02:42,
5年前
, 3F
04/04 02:42, 3F
→
04/04 02:42,
5年前
, 4F
04/04 02:42, 4F
→
04/04 02:42,
5年前
, 5F
04/04 02:42, 5F
推
04/04 12:01,
5年前
, 6F
04/04 12:01, 6F
→
04/04 12:01,
5年前
, 7F
04/04 12:01, 7F
→
04/04 12:12,
5年前
, 8F
04/04 12:12, 8F
→
04/04 12:14,
5年前
, 9F
04/04 12:14, 9F
→
04/04 12:14,
5年前
, 10F
04/04 12:14, 10F
→
04/05 01:49,
5年前
, 11F
04/05 01:49, 11F
推
04/05 17:09,
5年前
, 12F
04/05 17:09, 12F