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

扬中网站哪家做的好嘉兴建设规划网站

扬中网站哪家做的好,嘉兴建设规划网站,太原视频剪辑培训机构哪个好,网站备案官网常见的数据结构包括数组、链表、队列、栈、树、堆、哈希表和图#xff0c;每种数据结构都有其特点#xff0c;如下#xff1a; 常见数据结构 1.数组2.链表3.队列4.栈5.树6.图7.哈希表8.堆 1.数组 特点#xff1a; 固定大小的线性数据结构支持快速随机访问插入和删除效率…常见的数据结构包括数组、链表、队列、栈、树、堆、哈希表和图每种数据结构都有其特点如下 常见数据结构 1.数组2.链表3.队列4.栈5.树6.图7.哈希表8.堆 1.数组 特点 固定大小的线性数据结构支持快速随机访问插入和删除效率比较低 一般应用于需要快速随机访问元素的场景。 案例 # 定义一个数组 arr [1, 2 , 3, 4, 5] # 访问数组元素 print(arr[2]) # 输出: 3# 修改数组元素 arr[2] 10 print(arr) # 输出: [1, 2, 10, 4, 5]# 添加元素 arr.append(6) print(arr) # 输出: [1, 2, 10, 4, 5, 6]# 删除元素 arr.pop(2) print(arr) # 输出: [1, 2, 4, 5, 6]2.链表 特点 动态大小的数据结构插入和删除效率比较高不支持快速随机访问 适用于需要频繁插入和删除元素的场景 案例 class Node:def __init__(self, dataNone):self.data dataself.next Noneclass LinkedList:def __init__(self):self.head Nonedef append(self, data):new_node Node(data)if not self.head:self.head new_nodereturnlast self.headwhile last.next:last last.nextlast.next new_nodedef print_list(self):curr self.headwhile curr:print(curr.data, end - )curr curr.nextprint(None)# 使用链表 llist LinkedList() llist.append(1) llist.append(2) llist.append(3) llist.print_list() # 输出: 1 - 2 - 3 - None 3.队列 特点 先进先出插入操作在队尾进行删除操作在队头进行 应用于需要先进先出访问元素的场景如任务调度、消息队列等 案例 from collections import deque# 使用 deque 实现队列 queue deque()# 入队 queue.append(1) queue.append(2) queue.append(3) print(queue) # 输出: deque([1, 2, 3])# 出队 print(queue.popleft()) # 输出: 1 print(queue) # 输出: deque([2, 3]) 4.栈 特点 先进后出插入和删除在栈顶进行 应用于需要后进先出访问元素的场景如函数调用栈、表达式求值等 案例 # 使用列表实现栈 stack []# 入栈 stack.append(1) stack.append(2) stack.append(3) print(stack) # 输出: [1, 2, 3]# 出栈 print(stack.pop()) # 输出: 3 print(stack) # 输出: [1, 2]5.树 特点 非线性由节点和边组成树中的节点有层次关系一个节点可以有多个子节点 应用于需要表示层次结构的场景比如文件系统、组织结构等 案例 class TreeNode:def __init__(self, data):self.data dataself.children []def add_child(self, child_node):self.children.append(child_node)def print_tree(self, level0):prefix * (level * 4)print(prefix self.data)for child in self.children:child.print_tree(level 1)# 创建树 root TreeNode(Root) child1 TreeNode(Child1) child2 TreeNode(Child2) child3 TreeNode(Child3) root.add_child(child1) root.add_child(child2)child1.add_child(TreeNode(Grandchild1)) child1.add_child(TreeNode(Grandchild2)) root.print_tree() 6.图 特点 非线性由节点和边组成图中的节点可以通过边来相互连接 应用于需要表示网络结构的场景如社交网络、交通网络等。 案例 class Graph:def __init__(self):self.graph {}def add_edge(self, u, v):if u not in self.graph:self.graph[u] []self.graph[u].append(v)def print_graph(self):for node in self.graph:print(f{node} - {, .join(self.graph[node])})# 创建图 g Graph() g.add_edge(A, B) g.add_edge(A, C) g.add_edge(B, D) g.add_edge(C, D) g.print_graph() 7.哈希表 特点 基于哈希函数实现的键值对数据结构支持快速的插入、删除和查找操作 应用于需要快速查找和插入操作的场景如字典、缓存等。 案例 # 使用字典实现哈希表 hash_table {}# 插入键值对 hash_table[name] John hash_table[age] 30 hash_table[city] New York print(hash_table) # 输出: {name: John, age: 30, city: New York}# 查找键值对 print(hash_table[name]) # 输出: John# 删除键值对 del hash_table[age] print(hash_table) # 输出: {name: John, city: New York} 8.堆 特点 堆是一颗完全二叉树分为最大堆和最小堆 最大堆每个节点的值都大于或等于其子节点的值。最小堆每个节点的值都小于或等于其子节点的值。 支持快速获取最大值或最小值的操作。 适用于优先队列堆排序和实现高效的合并K个有序链表问题。 案例 import heapq# 创建一个最小堆 min_heap []# 插入元素 heapq.heappush(min_heap, 3) heapq.heappush(min_heap, 1) heapq.heappush(min_heap, 4) heapq.heappush(min_heap, 2) print(min_heap) # 输出: [1, 2, 4, 3]# 弹出最小元素 print(heapq.heappop(min_heap)) # 输出: 1 print(min_heap) # 输出: [2, 3, 4]# 创建一个最大堆通过将元素取反实现 max_heap [] heapq.heappush(max_heap, -3) heapq.heappush(max_heap, -1) heapq.heappush(max_heap, -4) heapq.heappush(max_heap, -2) print([-x for x in max_heap]) # 输出: [4, 2, 3, 1]# 弹出最大元素 print(-heapq.heappop(max_heap)) # 输出: 4 print([-x for x in max_heap]) # 输出: [3, 2, 1]
http://www.hkea.cn/news/14271930/

相关文章:

  • 网站建设评语网站建设实训内容
  • 成都微信网站建设报价网站底部关键词指向
  • 建一个企业网站要花多少钱网站平台建设所需开发工具
  • 温州网站设计制作企业主体负责人和网站负责人
  • 免费html网站开发教程搜索引擎营销怎么做
  • 山楼小院在哪家网站做宣传wordpress腾讯视频插件
  • 自己做网站网站超级单页网站模板
  • 苏州网站建设工作室软文代写发布
  • 企业营销型网站建设厂家网上做夫妻的网站
  • 部门网站建设管理包装设计收费明细
  • 智联招聘网站建设手机网站设计公司优选亿企邦
  • 黑帽seo软件郴州seo网络优化
  • 城市网站建设摘要论文硬件开发一站式平台
  • 织梦可以做论坛网站网站平台建设费用
  • 铜仁网站建设哪家专业厚街手机网站制作
  • 网站建设哪公司好天津造价信息网
  • 建设工程的在建设部网站手抄报模板网
  • 返佣贵金属交易所网站建设网站建站素材
  • 云南建设厅网站执业注册如何查询公司的详细信息
  • 专业信息门户网站建设如果评价网站做的好不好
  • 百度浏览器下载安装广西seo快速排名
  • 网站建设文案怎么写东莞网吧
  • 个人单页网站模板网站建设工作室有几个部门
  • 网站建设对信息公开的作用湖南厦门网站优化
  • 网站建设需要干什么wps可以做网站吗
  • 莆田网站建设方案优化郑州公司建网站
  • 网站开发公司建网站免费的室内装修设计软件
  • 北京做网站要多少钱苏州正规网站设计公司
  • seo企业网站源码东莞大岭山镇网站建设
  • 微商手机网站制作公司wordpress菜单显示在哪里设置