溫馨提示×

在C++中使用紅黑樹進行范圍搜索

c++
小樊
85
2024-04-26 19:05:48
欄目: 編程語言

#include <iostream>
#include <set>

using namespace std;

// 定義紅黑樹
set<int> rbTree;

// 執(zhí)行范圍搜索
void rangeSearch(int start, int end) {
    set<int>::iterator it = rbTree.lower_bound(start);
    while (it != rbTree.end() && *it <= end) {
        cout << *it << " ";
        it++;
    }
}

int main() {
    // 向紅黑樹中插入數(shù)據(jù)
    rbTree.insert(1);
    rbTree.insert(5);
    rbTree.insert(3);
    rbTree.insert(7);
    rbTree.insert(2);
    rbTree.insert(6);
    rbTree.insert(4);
    rbTree.insert(8);

    // 執(zhí)行范圍搜索
    rangeSearch(3, 6);

    return 0;
}

在這個示例中,我們首先定義了一個紅黑樹 rbTree,然后在 main 函數(shù)中插入了一些數(shù)據(jù)。最后我們調(diào)用 rangeSearch 函數(shù)進行范圍搜索,打印出范圍內(nèi)的數(shù)據(jù)。

0