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

上海新闻网下载长沙seo关键词

上海新闻网下载,长沙seo关键词,企业网站建设委托合同,网站布局怎么设计1. Python 中的集合(set) 1.1 特性 无序性:集合中的元素没有顺序,不能通过索引访问。唯一性:集合中的元素不能重复,如果尝试添加重复的元素,集合会自动忽略。可变性:集合是可变的&…

1. Python 中的集合(set

1.1 特性
  • 无序性:集合中的元素没有顺序,不能通过索引访问。
  • 唯一性:集合中的元素不能重复,如果尝试添加重复的元素,集合会自动忽略。
  • 可变性:集合是可变的,可以添加或删除元素。
  • 基于哈希表实现:集合的底层是哈希表,因此查找、插入和删除操作的平均时间复杂度都是 O(1)
1.2 创建集合
# 创建空集合
my_set = set()# 通过列表创建集合
my_set = set([1, 2, 3, 4, 4])  # 结果为 {1, 2, 3, 4},自动去重
1.3 常见操作
  • 添加元素
    my_set.add(5)  # 添加一个元素
    
  • 删除元素
    my_set.remove(3)  # 删除元素 3,如果元素不存在会抛出 KeyError
    my_set.discard(3)  # 删除元素 3,如果元素不存在不会报错
    
  • 查找元素
    if 2 in my_set:print("2 is in the set")
    
  • 集合运算
    • 并集
      set1 = {1, 2, 3}
      set2 = {3, 4, 5}
      union_set = set1.union(set2)  # 或者 set1 | set2
      print(union_set)  # 输出 {1, 2, 3, 4, 5}
      
    • 交集
      intersection_set = set1.intersection(set2)  # 或者 set1 & set2
      print(intersection_set)  # 输出 {3}
      
    • 差集
      difference_set = set1.difference(set2)  # 或者 set1 - set2
      print(difference_set)  # 输出 {1, 2}
      
    • 对称差集
      symmetric_difference_set = set1.symmetric_difference(set2)  # 或者 set1 ^ set2
      print(symmetric_difference_set)  # 输出 {1, 2, 4, 5}
      
1.4 应用场景
  • 去重:将列表转换为集合可以快速去除重复元素。
  • 快速查找:利用集合的 O(1) 查找特性,可以高效地判断某个元素是否存在。
  • 集合运算:用于处理集合之间的并集、交集、差集等操作,常用于图论、组合数学等问题。

2. C++ 中的集合(std::setstd::unordered_set

2.1 std::set
  • 特性
    • 有序性:集合中的元素会自动按照升序排列。
    • 唯一性:集合中的元素不能重复。
    • 基于红黑树实现:查找、插入和删除操作的时间复杂度为 O(log n)
  • 创建集合
    #include <set>
    std::set<int> my_set;
    
  • 常见操作
    • 添加元素
      my_set.insert(5);
      
    • 删除元素
      my_set.erase(3);
      
    • 查找元素
      if (my_set.find(2) != my_set.end()) {std::cout << "2 is in the set" << std::endl;
      }
      
    • 遍历集合
      for (int num : my_set) {std::cout << num << " ";
      }
      
2.2 std::unordered_set
  • 特性
    • 无序性:集合中的元素没有顺序。
    • 唯一性:集合中的元素不能重复。
    • 基于哈希表实现:查找、插入和删除操作的平均时间复杂度为 O(1)
  • 创建集合
    #include <unordered_set>
    std::unordered_set<int> my_unordered_set;
    
  • 常见操作
    • 添加元素
      my_unordered_set.insert(5);
      
    • 删除元素
      my_unordered_set.erase(3);
      
    • 查找元素
      if (my_unordered_set.find(2) != my_unordered_set.end()) {std::cout << "2 is in the set" << std::endl;
      }
      
2.3 应用场景
  • 快速查找std::unordered_set 的 O(1) 查找特性适合需要快速判断元素是否存在的场景。
  • 有序操作std::set 的有序特性适合需要对元素进行排序或二分查找的场景。
  • 去重:两种集合都可以用于去除重复元素。

3. 总结

  • Python 的 set
    • 无序、唯一、基于哈希表实现。
    • 查找、插入、删除操作的平均时间复杂度为 O(1)。
    • 适合快速查找、去重和集合运算。
  • C++ 的 std::set
    • 有序、唯一、基于红黑树实现。
    • 查找、插入、删除操作的时间复杂度为 O(log n)。
    • 适合需要有序操作的场景。
  • C++ 的 std::unordered_set
    • 无序、唯一、基于哈希表实现。
    • 查找、插入、删除操作的平均时间复杂度为 O(1)。
    • 适合快速查找和去重。
http://www.dtcms.com/wzjs/457682.html

相关文章:

  • 微网站 方案南宁网站关键词推广
  • 虚拟网站建设指导河北seo网络优化培训
  • 做网站好一点的软件南宁seo推广优化
  • 做a动态网站重庆seo整站优化外包服务
  • 网页主图模板seo网络推广机构
  • 百度做网站的费用软文街
  • 专业网站制作设推荐一个seo优化软件
  • 余姚做网站设计的百度免费推广怎么做
  • 郑州加盟网站建设qq推广链接
  • 自动生成网站武汉久都seo
  • 邢台网页设计seo快速优化技术
  • 行业前10的网站建设公司seo视频教程我要自学网
  • 教育网站开发需求专业北京网站建设公司
  • 帝国网站管理系统安装教程360收录提交入口
  • wordpress 菜单怎么使用上海百度移动关键词排名优化
  • 东莞网站搭建如何进行网站推广?网站推广的基本手段有哪些
  • html网站开发图片素材网站开发软件
  • 网站做自适应百度指数1000搜索量有多少
  • 手机网站会员识别功能百度seo优化排名
  • 长春建设厅网站太原网络推广公司
  • 邢台网站制作的地方关键词seo排名怎么样
  • 一级a做爰片免费网站国语自动app优化最新版
  • 什么是b2c模式seo快排优化
  • 以百度云做网站空间网站推广工具
  • 游戏网站建设公司seo自媒体培训
  • 在ppt里面做网站链接微指数查询入口
  • 企业网站建设工作室推广网站seo
  • WordPress添加弹窗下载按钮seo公司软件
  • 做网站编程需要学什么软件竞价排名的弊端
  • 做卖号网站吗百度关键词搜索指数查询