第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

存儲(chǔ)多種數(shù)據(jù)類型的項(xiàng)目時(shí)訪問數(shù)組元素的恒定時(shí)間

存儲(chǔ)多種數(shù)據(jù)類型的項(xiàng)目時(shí)訪問數(shù)組元素的恒定時(shí)間

江戶川亂折騰 2023-07-18 16:35:32
相對(duì)現(xiàn)代的語言(例如 ruby/python/js 等)如何在數(shù)組中存儲(chǔ)多種數(shù)據(jù)類型,并且仍然能夠在 O(1) 時(shí)間內(nèi)使用其索引訪問數(shù)組中的任何元素?據(jù)我了解,我們進(jìn)行簡(jiǎn)單的數(shù)學(xué)計(jì)算來確定指向任何元素的內(nèi)存地址,并通過索引乘以數(shù)組每個(gè)元素的大小來確定。
查看完整描述

2 回答

?
慕桂英546537

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超10個(gè)贊

首先,Ruby 語言規(guī)范、Python 語言規(guī)范和 ECMAScript 語言規(guī)范都沒有規(guī)定數(shù)組(或在 Python 中稱為列表)的任何特定實(shí)現(xiàn)策略。每個(gè)實(shí)施者都可以自由地按照自己的意愿實(shí)施它們。

其次,把它們放在一起沒有多大意義。例如,在 ECMAScript 中,數(shù)組實(shí)際上只是具有數(shù)字屬性的對(duì)象,而實(shí)際上,這些數(shù)字屬性甚至不是真正的數(shù)字,它們是字符串。

第三,它們并不真正存儲(chǔ)多種數(shù)據(jù)類型。例如,Ruby 只有一種數(shù)據(jù)類型:對(duì)象。由于一切都是對(duì)象,一切都具有相同的類型,因此將對(duì)象存儲(chǔ)在數(shù)組中沒有問題。

第四,至少 Ruby 語言規(guī)范實(shí)際上并沒有保證數(shù)組訪問的復(fù)雜度是 O(1)。不提供 O(1) 訪問權(quán)限的 Ruby 實(shí)現(xiàn)很可能會(huì)被社區(qū)拒絕,但它不會(huì)違反任何規(guī)范。

當(dāng)然,現(xiàn)在任何實(shí)施者都可以隨心所欲地發(fā)揮自己的聰明才智。例如,V8 檢測(cè)數(shù)組的所有值何時(shí)都是數(shù)字,然后以不同的方式存儲(chǔ)該數(shù)組。但這是 V8 的私有內(nèi)部實(shí)現(xiàn)細(xì)節(jié)。


查看完整回答
反對(duì) 回復(fù) 2023-07-18
?
至尊寶的傳說

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超10個(gè)贊

在內(nèi)存中,異構(gòu)數(shù)組是指針數(shù)組。每個(gè)數(shù)組元素都存儲(chǔ)數(shù)組中該位置項(xiàng)的內(nèi)存地址。

由于內(nèi)存地址的大小都相同,因此可以通過將數(shù)組索引乘以地址大小并將其與數(shù)組的基地址相加來找到每個(gè)地址的地址。


查看完整回答
反對(duì) 回復(fù) 2023-07-18
  • 2 回答
  • 0 關(guān)注
  • 172 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)