亚洲精品免播放器在线观看-久久啊-久久观看视频-日韩精品亚洲专区在线电影不卡-在线观看免费a∨网站-在线观看毛片网站

推廣 熱搜: 廣場  Java  app  Word  營業(yè)  微信公眾號  北京代理記賬  商城  代理記賬  商標(biāo)交易 

javascript列表操作 js單鏈表查找原理?

   2023-05-07 企業(yè)服務(wù)招財(cái)貓170
核心提示:js單鏈表查找原理?鏈表的起源一、鏈表的由來我們接觸最多的數(shù)據(jù)存儲結(jié)構(gòu)應(yīng)該是數(shù)組,它在實(shí)際場景中出現(xiàn)的頻率非常高,但并不適合所有情況。這也是一個鏈表原因如下:在許多編程語言中,數(shù)組的長度是固定的,所以

js單鏈表查找原理?

鏈表的起源

一、鏈表的由來

我們接觸最多的數(shù)據(jù)存儲結(jié)構(gòu)應(yīng)該是數(shù)組,它在實(shí)際場景中出現(xiàn)的頻率非常高,但并不適合所有情況。這也是一個鏈表

原因如下:

在許多編程語言中,數(shù)組的長度是固定的,所以當(dāng)數(shù)組充滿數(shù)據(jù)時,添加新元素是非常困難的。

在數(shù)組中添加和刪除元素很麻煩,因?yàn)閿?shù)組中的其他元素需要向前或向后平移。

Javascript中數(shù)組的主要問題是作為對象實(shí)現(xiàn),相比其他語言(如C和Java)中的數(shù)組效率較低。

為了解決以上問題,如果在實(shí)際使用中發(fā)現(xiàn)數(shù)組比較慢,可以考慮改用鏈表。除了對數(shù)據(jù)的隨機(jī)訪問,鏈表幾乎可以用于任何可以使用一維數(shù)組的場合。如果需要頻繁的刪除和添加操作,主動考慮鏈表吧~

1.1特點(diǎn)

優(yōu)勢

鏈表結(jié)構(gòu)可以充分利用計(jì)算機(jī)內(nèi)存空間,實(shí)現(xiàn)靈活的動態(tài)內(nèi)存管理。

添加數(shù)據(jù)和刪除數(shù)據(jù)很容易。

鏈表中的每個元素實(shí)際上都是一個獨(dú)立的對象,所有對象都通過每個元素中的引用字段鏈接在一起。

缺點(diǎn)?

訪問時間是線性的(而且很難流水線化),更快的訪問,比如隨機(jī)訪問,是不可行的。與鏈表相比,數(shù)組有更好的緩存位置。

失去了隨機(jī)讀取數(shù)組的優(yōu)勢,而且因?yàn)樵黾恿斯?jié)點(diǎn)的指針字段,鏈表的空間開銷也比較大。

鏈表有許多不同的類型:單向鏈表、雙向鏈表和循環(huán)鏈表。鏈表可以用許多編程語言實(shí)現(xiàn)。以下代碼全部用Js實(shí)現(xiàn)。如有不妥,請指正。我們鼓勵你。

第二,單鏈表

單個鏈表中的每個節(jié)點(diǎn)不僅包含一個值,還包含一個鏈接到下一個節(jié)點(diǎn)的引用字段。通過這種,單個鏈表按順序組織所有節(jié)點(diǎn)。、

下面是一個單鏈表的例子:

當(dāng)你得到了頭節(jié)點(diǎn),你就得到了整個列表。

我們創(chuàng)建單個節(jié)點(diǎn)的操作應(yīng)該如下所示:

2.1添加節(jié)點(diǎn)

就像打繩結(jié)一樣,加一個節(jié)點(diǎn)就是在兩個結(jié)之間打一個新結(jié)。

如果我們想在給定的節(jié)點(diǎn)prev后添加一個新值,我們應(yīng)該:

創(chuàng)建要插入的節(jié)點(diǎn)cur。

將cur節(jié)點(diǎn)的下一個鏈接到下一個節(jié)點(diǎn)(pre的下一個節(jié)點(diǎn))

將下一個pre鏈接到cur節(jié)點(diǎn)。

在開頭添加一個節(jié)點(diǎn)

眾所周知,我們用head節(jié)點(diǎn)來表示整個列表。

因此,在列表的開頭添加新節(jié)點(diǎn)時,更新head節(jié)點(diǎn)head是非常重要的。

初始化新節(jié)點(diǎn)cur;

將新節(jié)點(diǎn)cur的下一個鏈接到我們原來的頭節(jié)點(diǎn)。

將下一個頭節(jié)點(diǎn)鏈接到cur,也就是說,是的。

在末尾添加一個節(jié)點(diǎn)

創(chuàng)建新的節(jié)點(diǎn)cur

只需將鏈表最后一個節(jié)點(diǎn)的下一個鏈接到cur。

2.2刪除節(jié)點(diǎn)

如果我們想刪除指定的節(jié)點(diǎn)cur,我們應(yīng)該這樣做:

查找cur的上一個節(jié)點(diǎn)prev及其下一個節(jié)點(diǎn)(要刪除的節(jié)點(diǎn))。

把鏈接給`,也就是跳過刪除節(jié)點(diǎn)。

注意:必須從頭節(jié)點(diǎn)遍歷到指定節(jié)點(diǎn),刪除節(jié)點(diǎn)的平均時間復(fù)雜度為O(N)。

刪除最后一個節(jié)點(diǎn)

找到下一個節(jié)點(diǎn)鏈接為空的節(jié)點(diǎn),以及它的前一個節(jié)點(diǎn)。

僅鏈接空

第三,設(shè)計(jì)鏈表

以LeetCod

如何實(shí)現(xiàn)用javascript把地圖可視化?

對于JS開發(fā)人員來說,可視化數(shù)據(jù)的能力與制作交互式網(wǎng)頁一樣重要。特別是兩者經(jīng)常同時出現(xiàn)。在數(shù)據(jù)中使用Javascript隨著可視化領(lǐng)域的普及,甚至?xí)行碌膸炜梢詾閃eb創(chuàng)建漂亮的圖表。

可視化需要考慮許多因素:

我想要什么樣的圖表?餅狀圖,地理圖,折線圖,條形圖?

有些庫只支持幾種類型。首先,你要知道自己真正需要的是什么。

數(shù)據(jù)集有多大?

基于SVG的庫通常更適合中小型數(shù)據(jù)集,因?yàn)槊總€元素都是唯一的節(jié)點(diǎn),存在于DOM樹中。這也意味著允許直接訪問它們,這使得它們更加靈活。雖然您可以使用一些數(shù)據(jù)聚合算法、智能內(nèi)存管理和其他花哨的技術(shù)來處理大型數(shù)據(jù)集,但使用基于Canvas的大型數(shù)據(jù)集工具是更可靠的選擇。帆布速度很快。

該應(yīng)用程序是Web應(yīng)用程序、移動應(yīng)用程序還是兩者都有?

有些庫響應(yīng)速度更快,有些庫有自己版本的ReactNative,比如Victory。

瀏覽器支持給定的庫嗎?

你用的是什么樣的Javascript框架?

確保您的數(shù)據(jù)庫庫能夠順利運(yùn)行。如果您正在使用React,使用React特定的庫可能比使用包裝器更好。

你需要什么樣的外貌?

如果需要一些高級動畫,也要考慮這個。

能夠回答上面提到的問題將會很容易找到一個完美的開源解決方案。

1、D3.js

適用于:任何環(huán)境

GitHub:

2、退貨

適用于:反應(yīng)

GitHub:

3、勝利

適用于:反應(yīng),反應(yīng)原生

4、反作用

適用于:反應(yīng)

5、ApexCharts

適用于:React,Vue.js,純Javascript。

GitHub:

越來越多的數(shù)據(jù)可視化庫證明了Web可視化的重要性。希望這個列表能幫助你在以后的項(xiàng)目中創(chuàng)造出漂亮的圖表。祝你好運(yùn)!

 
反對 0舉報(bào) 0 收藏 0 打賞 0評論 0
 
更多>同類資訊
推薦圖文
推薦資訊
點(diǎn)擊排行
合作伙伴
網(wǎng)站首頁  |  關(guān)于我們  |  聯(lián)系方式  |  使用協(xié)議  |  版權(quán)隱私  |  網(wǎng)站地圖  |  排名推廣  |  廣告服務(wù)  |  積分換禮  |  網(wǎng)站留言  |  RSS訂閱  |  違規(guī)舉報(bào)  |  冀ICP備2023006999號-8
 
主站蜘蛛池模板: 国产精品美女久久久久 | 精品国产日韩亚洲一区二区 | 日韩欧美国产中文字幕 | 在线观看精品一区 | 看全黄大色大黄美女 | 久久精品国产三级不卡 | 久久国产片| 一区二区三区在线 | 国产成人精品免费视频大全五级 | 欧美色图一区 | 亚洲一区 中文字幕 久久 | 日韩午夜在线观看 | 五月天婷婷在线观看 | 国产免费一区二区三区免费视频 | 亚洲国产成人综合精品2020 | 国产99久久精品一区二区 | 久久国产毛片 | 日韩视频在线观看免费 | 欧美人与禽交zozo | 国产日韩欧美综合 | 手机国产精品一区二区 | 免费观看一级成人毛片 | 久久久久久91香蕉国产 | 狠狠色狠狠色综合日日不卡 | 自拍 欧美 在线 综合 另类 | 国产成人一区二区三区 | 91久久综合九色综合欧美98 | 日韩aa在线观看 | 亚洲第一页色 | 中文字幕不卡在线 | 成人免费久久精品国产片久久影院 | 在线观看视频一区 | 成人欧美一区二区三区 | 国产精品成人久久久久 | 亚欧洲精品在线视频免费观看 | 国产成人一区二区小说 | 国产一在线| 国产一区二区三区久久精品 | 欧美视频一区二区三区 | 亚洲欧美日韩精品高清 | 天堂va欧美ⅴa亚洲va一国产 |