当前位置: 首页 > news >正文

C++中STL容器应用

一、STL容器核心应用

1. vector(动态数组)

特性:连续内存、随机访问O(1)、尾部操作高效

// 高性能数值计算
vector<double> processSensorData() {vector<double> readings;readings.reserve(1000);  // 预分配内存避免多次扩容for(int i=0; i<1000; ++i) {readings.push_back(getSensorValue());}// 使用STL算法处理数据auto max_val = *max_element(readings.begin(), readings.end());transform(readings.begin(), readings.end(), readings.begin(),[max_val](double x) {return x/max_val; });return readings;
}// 二维数组模拟
vector<vector<int>> matrix(5, vector<int>(5, 0));  // 5x5矩阵初始化
 
 

2. list(双向链表)

特性:任意位置插入/删除O(1)、不支持随机访问

// 高频交易订单簿
struct Order {double price;int quantity;
};list<Order> orderBook;// 插入时自动排序
void addOrder(Order newOrder) {auto it = find_if(orderBook.begin(), orderBook.end(),[&](const Order& o) {return o.price > newOrder.price; });orderBook.insert(it, newOrder);
}// 快速删除失效订单
orderBook.remove_if([](const Order& o) {return o.quantity <= 0; });
 
 

3. map/set(红黑树实现)

特性:自动排序、查找O(log n)

// 字典管理
map<string, string> configMap = {{"resolution", "1920x1080"},{"volume", "75"}
};// 安全访问
if(auto it = configMap.find("volume"); it != configMap.end()) {cout << "当前音量:" << it->second << endl;
}// 多键索引
multimap<string, Employee> nameIndex;  // 允许重复键
 
 

4. unordered_map(哈希表)

特性:平均O(1)访问、无序存储

// 快速查找表
unordered_map<string, int> wordCount;// 词频统计
string text = "a quick brown fox jumps over the lazy dog";
istringstream iss(text);
string word;
while(iss >> word) {++wordCount[word];
}// 查找高频词
auto highFreq = max_element(wordCount.begin(), wordCount.end(),[](auto& a, auto& b) {return a.second < b.second; });
 
 

5. deque(双端队列)

特性:头尾操作高效、分段连续存储

// 滑动窗口处理
deque<int> window;
const int WINDOW_SIZE = 5;void processData(int newValue) {window.push_back(newValue);if(window.size() > WINDOW_SIZE) {window.pop_front();}// 计算窗口平均值double avg = accumulate(window.begin(), window.end(), 0.0) / window.size();
}
 
 

常见陷阱与解决方案

  1. 迭代器失效问题
    vector<int> vec {1,2,3,4,5};
    for(auto it = vec.begin(); it != vec.end(); ) {if(*it % 2 == 0) {it = vec.erase(it);  // 正确方式} else {++it;}
    }
http://www.hskmm.com/?act=detail&tid=40333

相关文章:

  • 2025 年德州清水混凝土修补,德州仿清水混凝土修补,德州外墙仿清水混凝土修补公司最新推荐,聚焦资质、案例、售后的五家企业深度解读
  • 2025 年德州混凝土修补,山东专业混凝土修补,山东建筑清水混凝土修补,山东装饰清水混凝土修补公司最新推荐,聚焦资质、案例、售后的五家企业深度解读
  • 前后端分离,千万别再搞错了!
  • 通用知识手册
  • 写给26届文科大学应届生的秋招求职建议 - jobleap.cn助你找到满意的工作
  • 2025年10月烤火炉推荐:知名榜单全维度选择方案
  • 2025年10月烤火炉推荐:主流品牌口碑排行榜与避坑指南
  • 【金融行业案例】基于Vaadin全栈Java框架重构内部系统,全面提升开发效率与用户体验
  • 2025年10月烤火炉推荐:对比排行榜助你轻松选
  • 2025 年中压离心泵,高压离心泵,清水离心泵,立式离心泵厂家最新推荐,聚焦资质、案例、售后的五家企业深度解读
  • BOS中设置实际精度为6位小数,前端显示1位小数
  • 2025年60BYGH步进电机厂家权威推荐榜单:42BYGHL步进电机/20BYGH步进电机/57BYGH步进电机源头厂家精选
  • 2025年克拉玛依旅游团综合实力TOP3排行榜:阿勒泰旅游/新疆喀纳斯旅游/新疆旅游服务商精选。
  • 2025 年最新推荐西安路灯厂家排行榜:市政 / LED / 智慧 / 太阳能 / 农村路灯企业权威测评指南
  • time-ode项目结构
  • 2025 年长沙美食餐厅最新推荐榜,食材溯源与管理创新双维度下的品质品牌解析
  • 2025年新疆电线电缆厂家综合实力TOP3排行榜:耐火电缆/矿用电缆/高温电缆源头厂家精选。
  • php反序列化
  • 2025 年北京湖南菜餐厅最新推荐榜,食材溯源与烹饪实力及市场口碑深度解析
  • layui动态模板详解
  • 2025 年铝塑膜源头厂家最新推荐榜,技术实力与市场口碑深度解析,覆盖多场景包装需求真空包装 / 出口海运 / 导轨包装 / 电气包装 / 镀铝编织铝塑膜公司推荐
  • docker中mysql异常关闭
  • 2025年度钢结构加工厂综合实力TOP3排行榜:H型钢/彩钢压型板/钢结构厂房源头厂家精选。
  • 2025 年北京湘菜餐厅最新推荐榜,食材品质与服务体验及市场口碑深度解析
  • 高性能 低门槛|H200 GPU 正式上线 OpenCSG 社区和三峡传神社区!
  • 从零开始制作 MyOS(三)
  • 2025年知名的防火包裹卷材陶瓷纤维行业内知名厂家排行榜
  • 2025年真空连续干燥机厂家权威推荐榜单:真空耙式干燥机/真空冷冻干燥机/方形真空干燥机源头厂家精选
  • 2025年质量好的热镀锌钢销售厂家
  • 2025年广东中小学网课学习机服务商TOP3权威实力榜单:小学英语学习机/智能ai学生学习机/网课平板学习机服务商精选