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

C语言蓝桥杯:语言基础

竞赛常用库函数

最值查询

min_element和max_element在vector(迭代器的使用)

nth_element函数的使用

例题lanqiao OJ 497成绩分析

第一种用min_element和max_element函数的写法

第二种用min和max的写法

二分查找

二分查找只能对数组操作

binary_search函数,用于查找数字是否存在(前提是数组已经排完序)

lower_bound(st,ed,x)获取第一个大于等于x的元素的地址

和upper_bound(st,ed,x)获取第一个大于x的元素的地址

地址-首地址=下标

使用这两个的前提是数组必须为非降序

如果你应要用降序,会出现于实际不符的情况

例题:lanqiao OJ 1389二分查找数组元素

大小写转换

islower(用于检查是否是小写字母)/isupper(用于检查是否是大写字母)函数

tolower(转换为小写字母)/toupper(转换为大写字母)函数

用ascil实现大小写转换

实现大小写转换的方法,使用库函数的方法

实现大小写转换的方法,使用ascil的方法

全排序

next_permutation()函数

next_permutation()函数想要得到全部的排列第一数列必须是最小的如1,2,3,用迭代器的写法

next_permutation()函数用数组的写法

prev-permutation()函数函数想要得到全部的排列第一数列必须是最大的如3,2,1

通过结果可知运行到最后它会返回到第一个运行的数列

其他库函数

memset()函数

第一参数是所指地址块,第二个为要设置的值,第三个为重置的元素

memset()函数的解释

swap()函数

reverse()函数

reverse()函数的解释

unique()函数

unique函数的解释

unique()说明

STL

pair

pair的定义和结构

pair的定义和结构解释

pair的嵌套

pair自带排序规则

pair代码示例

vector

vector的定义

vector的特性

vector的常用函数注意for循环遍历迭代器的时候里面判断时不能用大于号或者小鱼号可以用不等或者等于号,如下面it!=vec.end(),迭代器返回的是地址所以我们打印需要解引用

vector排序去重

list

list的定义

list的结构

vector和deque是连续的存储空间,list是不连续的存储空间

list的常用函数

stack

stack的定义和结构

stack的常用函数

queue队列

priority_queue优先队列

第一种方式priority_queue优先队列自定义比较函数,最小堆的写法return大于号

第二种方式priority_queue优先队列自定义比较函数,最小堆的写法return大于号

第三种方式priority_queue优先队列不用自定义函数的方法,实现最小堆的写法在priority_queue里面加入greater<>

deque双端队列

例题队列 lanqiao OJ 1113

例题 lanqiao OJ 741 合并果子

set集合

set集合的函数

set集合修改set比较的方法

set集合默认为升序排列

用greater<int>就变为降序了

set集合用仿函数的写法实现降序

multiset多重集合

multiset多重集合有哪些函数

如果想要删除重复元素的第一个重复元素的第一个可以用st.erase(st.find(x))

unordered_set无序集合

unordered_set无序集合可用的函数

set集合代码示例

multiset多重集合案例

equal_range()函数解释多重集合里的函数

C++ STL中multiset equal_range()函数|极客教程 (geek-docs.com)

unordered_set无序集合示例

map

map中的函数

map代码示例

multimap

multimap中的函数

multimap代码示例

unordered_map

unordered_map中的函数

unordered_map代码示例

总结例题

例题01 3226宝藏排序

例题02 1624小蓝吃糖果

用priority_queue优先队列的写法

用max函数的写法

例题03 2490小蓝的括号串1

04 1531快递分拣

小明和完美序列

相关文章:

  • 【Python系列】理解 Python 中的时间和日期处理
  • Java学习Day41:骑龙救!(springMVC)
  • 使用 `Vitesse Uni App` 创建微信小程序并配置 uview-plus 和 alovajs
  • 金色传说:SAP-SD-VA01增强:创建销售订单时检查抬头长文本必输增强
  • makefile语法注意点
  • JVM字节码
  • stm32f103c8t6最小系统中的指示灯
  • C#使用TCP-S7协议读写西门子PLC(二)
  • mysql Deadlock found when trying to get lock; try restarting transaction
  • 影刀RPA实战:自动化同步商品库存至各大电商平台(一)
  • PPT技巧:如何在幻灯片中生成目录?
  • Mongoose OverwriteModelError: Cannot overwrite `note` model once compiled.
  • 易基因:朱健康团队WGBS揭示主动DNA去甲基化缺失植物的DNA甲基化跨代增加|PNAS
  • SprinBoot+Vue山西文旅网的设计与实现
  • 【原创】java+springboot+mysql疫情期间在线答疑系统设计与实现
  • 【笔记】自动驾驶预测与决策规划_Part1_自动驾驶决策规划简介
  • 单链表的实现(C语言)
  • 利用AI驱动智能BI数据可视化-深度评测Amazon Quicksight(三)
  • S7-1500替代S7-300全解析系列
  • Python中的单例模式:从入门到精通
  • 免签国+1,中乌(兹别克斯坦)互免签证协定6月生效
  • “典孝急乐批麻蚌赢”:互联网“八字真言”与当代赛博赢学
  • 视频|王弘治:王太后,“先天宫斗圣体”?
  • 中国-拉共体成员国重点领域合作共同行动计划(2025-2027)
  • 郑培凯:汤显祖的“至情”与罗汝芳的“赤子之心”
  • 沙县小吃中东首店在沙特首都利雅得开业,首天营业额超5万元