僅用C語言可以構造出Python中Dict那種數據結構嗎?
01-04
查找,插入,刪除的時間複雜度能一樣不?
CPython的dict就是用純C實現的嗯:cpython/dict-common.h at master · python/cpython · GitHub
cpython/dictobject.c at master · python/cpython · GitHub
Python就是用c實現的,你說可以不可以?另外,c實現的這種哈希表+鏈表的二維數據結構,其實也有實例:memcached中的緩存就是同一種數據結構。只不過,在python裡面,鏈表用於維持有序性(foreach/push/pop的時候用到),而mc中,鏈表則用於淘汰演算法LRU。
Python一般就是CPython,它的Dict不就是c寫的嗎
你需要Python源碼剖析 (豆瓣)
當然可以,官方的Python就是C語言實現的。從另一方面講,這兩門語言是圖靈等價的,所以是可以的。
這和是什麼語言沒關係吧,只要這個語言是圖靈完備的就可以,當然難易程度另說
沒有c語言幹不了的活,只有適合不適合。
推薦閱讀:
※用c語言怎麼實現把一個文件中所有的字元串進行篩選,重複的字元串只留下一個?
※C語言中的一個小問題?
※C 指針傳遞變數為什麼無法修改變數值?
※不學C語言,直接學C++會有問題嗎?