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

吉林平台网站建设多少钱苏州互联网公司多吗

吉林平台网站建设多少钱,苏州互联网公司多吗,网站的概念,网站接入std::collections::BTreeMap定义 B树也称B-树#xff0c;注意不是减号#xff0c;是一棵多路平衡查找树#xff1b;理论上#xff0c;二叉搜索树 #xff08;BST#xff09; 是最佳的选择排序映射#xff0c;但是每次查找时层数越多I/O次数越多#xff0c;B 树使每个节…std::collections::BTreeMap定义 B树也称B-树注意不是减号是一棵多路平衡查找树理论上二叉搜索树 BST 是最佳的选择排序映射但是每次查找时层数越多I/O次数越多B 树使每个节点都包含连续数组中的 B-1 到 2B-1 元素可以减少树的高度减少I/O次数 BTreeMap定义 pub struct BTreeMapK, V, A: Allocator Clone Global {// B 树的根节点root: OptionRootK, V,// B 树映射中存储的键值对的数量length: usize,// 分配器pub(super) alloc: ManuallyDropA,// PhantomData是一个零大小的类型用于向编译器提供类型信息但在运行时不占用任何空间_marker: PhantomDatacrate::boxed::Box(K, V), A, }方法 clear用于清空BTreeMap移除所有的键值对 use std::collections::BTreeMap;fn main() {let mut map BTreeMap::new();map.insert(a, 1);map.insert(b, 2);map.clear();println!(After clear, is empty? {}, map.is_empty());// After clear, is empty? true }get用于获取指定键对应的值的不可变引用如果键不存在则返回None use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);if let Some(value) map.get(a) {println!(Value for a: {}, value);// Value for a: 1} else {println!(a not found.);} }get_key_value返回指定键对应的值和键的不可变引用如果键不存在则返回None use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);if let Some((key, value)) map.get_key_value(b) {println!(Key-value pair for b: {} - {}, key, value);// Key-value pair for b: b - 2} else {println!(b not found.);} }first_key_value返回BTreeMap中的第一个键值对如果地图为空则返回None use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);if let Some((first_key, first_value)) map.first_key_value() {println!(First key-value pair: {} - {}, first_key, first_value);// First key-value pair: a - 1} else {println!(Map is empty.);} }first_entry返回一个可变引用到BTreeMap中的第一个键值对如果地图为空则返回None use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),]);if let Some(first_entry) map.first_entry() {println!(First entry: {} - {}, first_entry.key(), first_entry.get());// First entry: a - 1} else {println!(Map is empty.);} }pop_first移除并返回BTreeMap中的第一个键值对如果地图为空则返回None use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),]);if let Some((popped_key, popped_value)) map.pop_first() {println!(Popped first pair: {} - {}, popped_key, popped_value);// Popped first pair: a - 1} else {println!(Map is empty.);} }pop_last移除并返回BTreeMap中的最后一个键值对如果地图为空则返回None use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),]);if let Some((last_key, last_value)) map.pop_last() {println!(Popped last pair: {} - {}, last_key, last_value);// Popped last pair: b - 2} else {println!(Map is empty.);} }contains_key判断BTreeMap中是否存在指定的键 use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);println!(Contains a? {}, map.contains_key(a));// Contains a? true }get_mut返回指定键对应的值的可变引用如果键不存在则返回None use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),]);if let Some(value) map.get_mut(a) {*value 3;println!(Modified value for a: {}, value);// Modified value for a: 3} else {println!(a not found.);} }insert插入一个键值对到BTreeMap中如果键已经存在则覆盖旧值 use std::collections::BTreeMap;fn main() {let mut map BTreeMap::new();map.insert(a, 1);map.insert(a, 2);println!(After insert: {:?}, map);// After insert: {a: 2} }remove移除指定键对应的键值对并返回被移除的值如果键不存在则返回None use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),]);if let Some(removed_value) map.remove(a) {println!(Removed value for a: {}, removed_value);// Removed value for a: 1} else {println!(a not found.);} }remove_entry移除指定键对应的键值对并返回被移除的键值对如果键不存在则返回None use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),]);if let Some((removed_key, removed_value)) map.remove_entry(b) {println!(Removed entry: {} - {}, removed_key, removed_value);// Removed entry: b - 2} else {println!(b not found.);} }retain保留满足给定谓词的键值对 use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),(c, 3),]);map.retain(|key, value| (*key b || *value 2));println!(After retain: {:?}, map);// After retain: {b: 2, c: 3} }append将另一个BTreeMap的键值对追加到当前BTreeMap中 use std::collections::BTreeMap;fn main() {let mut map1 BTreeMap::from([(a, 1),(b, 2),]);let mut map2 BTreeMap::from([(c, 3),(d, 4),]);map1.append(mut map2);println!(After append: {:?}, map1);// After append: {a: 1, b: 2, c: 3, d: 4} }range返回一个迭代器遍历BTreeMap中满足给定范围条件的键值对 use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),(c, 3),(d, 4),]);for (key, value) in map.range(b..) {println!(In range: {} - {}, key, value);}// In range: b - 2// In range: c - 3// In range: d - 4 }range_mut返回一个可变迭代器遍历BTreeMap中满足给定范围条件的键值对并允许修改值 use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),(c, 3),(d, 4),]);for (key, value) in map.range_mut(b..) {*value *value * 2;println!(Modified in range: {} - {}, key, value);}// Modified in range: b - 4// Modified in range: c - 6// Modified in range: d - 8 }entry返回一个Entry API可以用于插入或更新键值对 use std::collections::BTreeMap;fn main() {let mut map BTreeMap::new();let entry map.entry(a).or_insert(1);println!(Entry value for a: {}, entry);// Entry value for a: 1 }split_off移除并返回给定键及其对应的值如果键不存在则返回None和一个空BTreeMap into_keys将BTreeMap的键提取为一个可迭代的集合 use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);let keys: Vec_ map.into_keys().collect();println!(Keys: {:?}, keys);// Keys: [a, b] }into_values将BTreeMap的值提取为一个可迭代的集合 use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);let values: Vec_ map.into_values().collect();println!(Values: {:?}, values);// Values: [1, 2] }iter返回一个迭代器遍历BTreeMap的键值对 use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);for (key, value) in map.iter() {println!(Iter: {} - {}, key, value);}// Iter: a - 1// Iter: b - 2 }iter_mut返回一个可变迭代器允许修改BTreeMap的键值对 use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),]);for (key, value) in map.iter_mut() {*value *value * 2;println!(Mut iter: {} - {}, key, value);}// Mut iter: a - 2// Mut iter: b - 4 }keys返回一个迭代器遍历BTreeMap的键 use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);for key in map.keys() {println!(Key from keys: {}, key);}// Key from keys: a// Key from keys: b }values返回一个迭代器遍历BTreeMap的值 use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);for value in map.values() {println!(Value from values: {}, value);}// Value from values: 1// Value from values: 2 }values_mut返回一个可变迭代器允许修改BTreeMap的值 use std::collections::BTreeMap;fn main() {let mut map BTreeMap::from([(a, 1),(b, 2),]);for value in map.values_mut() {*value *value * 3;println!(Mut value from values_mut: {}, value);}// Mut value from values_mut: 3// Mut value from values_mut: 6 }len返回BTreeMap中键值对的数量 use std::collections::BTreeMap;fn main() {let map BTreeMap::from([(a, 1),(b, 2),]);println!(Length: {}, map.len());// Length: 2 }is_empty判断BTreeMap是否为空 use std::collections::BTreeMap;fn main() {let map: BTreeMapi32, str BTreeMap::new();println!(Is empty: {}, map.is_empty());// Is empty: true }
http://www.hkea.cn/news/14374508/

相关文章:

  • 公司活动策划方案怎么做seo优化网站建设哪家好
  • 建立个人网站能干anwsion wordpress
  • 创意江苏网站建设东莞市网站seo
  • f型网站安徽网站建设电话
  • 阐述网站建设的步骤过程繁峙做网站建设
  • 企业云网站建设如何上传网页到网站
  • 查看网站是否备案电商网站制作
  • 淘宝网站建设方式谷歌关键词优化怎么做
  • 王也王志飞西安网络优化培训机构公司
  • 云南建站初中信息科技怎么自己做网站
  • wordpress模板 站长西安搜索引擎优化
  • 手机网站建设策划书dreamwearver可以做网站吗
  • 游戏公司招聘网站电子商城官方网站
  • 建材网站建设 南宁如何弄微信小程序店铺
  • 手机网站公司哪家好wordpress文章开始加内容
  • 云建站公司网站开发入门书籍
  • 企业网站排名优化价格重装的系统没有wordpress
  • 雄安微网站开发硬件产品开发流程图
  • 多个网站如何做301深圳做积分商城网站建设
  • wordpress瀑布流主 65533优化公司
  • 专业seo站长工具个人wordpress是否需要备案
  • 高端商务经纪网站建设云南网直播
  • 作风建设网站长沙网站设计公司排名
  • 手机制作网站的软件四川房产信息网官网
  • 网站开发问卷调查厦门网站建设找维品
  • 建立一个个人网站做360网站优化快
  • 特色食品网站建设策划书免费项目管理软件app
  • 做直播网站软件设计公司需要什么资质
  • 建设网站需要的资源小程序后台管理系统
  • 电子商务网站建设考试试题网页制作素材免费网站