av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

紅色機器人樹狀查詢詳解(redis樹狀查詢)

紅色機器人:樹狀查詢詳解

射洪網站建設公司成都創(chuàng)新互聯(lián)公司,射洪網站設計制作,有大型網站制作公司豐富經驗。已為射洪近1000家提供企業(yè)網站建設服務。企業(yè)網站搭建\成都外貿網站建設要多少錢,請找那個售后服務好的射洪做網站的公司定做!

樹狀數組是一種數據結構,可以在O(logn)的時間內對數組進行單點修改和前綴查詢,適用于處理動態(tài)序列數據。該數據結構廣泛應用于競賽編程等領域。

紅色機器人是一款在線提供樹狀數組功能的工具,可以快速完成樹狀查詢。接下來我們將詳細介紹紅色機器人樹狀查詢的相關內容。在使用前,需要先了解以下幾個概念:

1. 樹狀數組的結構

樹狀數組是一棵二叉樹的結構,每個節(jié)點保存的是從該節(jié)點的祖先節(jié)點到該節(jié)點的區(qū)間和。如下圖所示,節(jié)點i的區(qū)間和就是從節(jié)點i到其右下角子節(jié)點的方框內所有元素之和。

2. 樹狀數組的前綴查詢

樹狀數組的前綴查詢實現起來非常簡單,只需要從葉子節(jié)點開始一直往上找,直到找到第一個不為0的節(jié)點,該節(jié)點的值即為所查詢的區(qū)間和。如下圖所示,查詢前綴和區(qū)間[1,7]時,先找到節(jié)點7,則答案為9;查詢前綴和區(qū)間[1,4]時,先找到節(jié)點4,則答案為6。查詢的時間復雜度為O(logn)。

3. 樹狀數組的單點修改

樹狀數組的單點修改也非常簡單,只需要先將該點的值更新,然后再依次往上更新其祖先節(jié)點的值即可。如下圖所示,將節(jié)點6的值加上3,則需要分別更新節(jié)點6、節(jié)點10和節(jié)點12的值。

以上就是樹狀數組的結構和基本操作,接下來我們將使用紅色機器人進行樹狀查詢的具體操作。

1. 打開紅色機器人的網站:https://www.luogu.com.cn/robot/circle/1557 。

2. 在代碼區(qū)輸入以下代碼:

#include

using namespace std;

const int N = 100010;

int n, m;

int w[N]; // 存儲原數組

int c[N]; // 存儲樹狀數組

int lowbit(int x) { // 求x的lowbit(x的二進制表示中最后一個1所代表的數)

return x & -x;

}

void add(int x, int v) { // 更新樹狀數組

for(int i = x; i

c[i] += v;

}

}

int sum(int x) { // 查詢前綴和

int res = 0;

for(int i = x; i; i -= lowbit(i)) {

res += c[i];

}

return res;

}

int mn() {

scanf(“%d %d”, &n, &m);

for(int i = 1; i

scanf(“%d”, &w[i]);

add(i, w[i]); // 初始化樹狀數組

}

while(m–) {

int op;

scanf(“%d”, &op);

if(op == 1) { // 單點修改

int x, v;

scanf(“%d %d”, &x, &v);

add(x, v – w[x]);

w[x] = v;

} else { // 區(qū)間查詢

int l, r;

scanf(“%d %d”, &l, &r);

printf(“%d\n”, sum(r) – sum(l – 1));

}

}

return 0;

}

3. 點擊運行,輸入n和m(n表示數組元素個數,m表示操作次數),然后逐行輸入n個整數作為原數組,最后逐行輸入m個操作,支持單點修改和區(qū)間查詢。

4. 點擊提交,即可得到樹狀查詢的運行結果。注意:紅色機器人會自動計算時間和內存,需要保證代碼運行時間和空間復雜度最優(yōu)。

至此,我們已經學習了樹狀數組的相關知識和操作方法,并使用紅色機器人完成了樹狀查詢的實踐。樹狀數組雖然簡單,但在處理一些經典算法問題時非常實用,例如離線查詢、差分、區(qū)間最值更新等。建議多多練習,熟練掌握該數據結構,以便在實際問題解決中得心應手。

創(chuàng)新互聯(lián)是成都專業(yè)網站建設、網站制作、網頁設計、SEO優(yōu)化、手機網站、小程序開發(fā)、APP開發(fā)公司等,多年經驗沉淀,立志成為成都網站建設第一品牌!


分享題目:紅色機器人樹狀查詢詳解(redis樹狀查詢)
URL網址:http://uogjgqi.cn/article/coogisi.html
掃二維碼與項目經理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術咨詢/運營咨詢/技術建議/互聯(lián)網交流