Gsupl.落浅~zbxGsupl.落浅~

03:32:14 PM

哥伦布

10°

数据结构-队列

Gsupl.落浅·2024-09-05 20:26·12 次阅读

数据结构-队列

一:队列的基本操作

1、先进先出;入队和出队、类似与排队

2、单端队列

3、队列的常见操作

Copy
#在python 中使用deque创建队列 import collections import deque duilie=deque()#创建队列 def add(nums): duilie.append()#给队列添加元素 def peek(): return duilie[0]#查看队首元素 def remove(): if duilie: duilie.popleft()#删除队首元素 else: return len(duilie) def size(): return len(duilie)#计算队列的长度 def print_duilie(): for i in range:#遍历输出队列元素 print(i) else: print("出现错误") return "" #给队列添加元素 add(1) add(3) add(4) #调用函数进行操作 #print(print_queue(),end="") #print(peek()) #print(remove()) print(size())

二:队列刷题

933题目 最近的请求次数

  • RecentCounter() 初始化计数器,请求数为 0 。
  • int ping(int t) 在时间 t 添加一个新请求,其中 t 表示以毫秒为单位的某个时间,并返回过去 3000 毫秒内发生的所有请求数(包括新请求)。确切地说,返回在 [t-3000, t] 内发生的请求数。

保证 每次对 ping 的调用都使用比之前更大的 t 值。

示例 1:

Copy
输入: ["RecentCounter", "ping", "ping", "ping", "ping"] [[], [1], [100], [3001], [3002]] 输出:
Copy
from collections import deque def ping(requests, t): requests.append(t) while requests[0]<t-3000: requests.popleft() return len(requests) #创建队列 requests=deque() print(ping(requests, 1),end=' ')

题目:387 字符串中第一个唯一一个的字符

思路:哈希表的经典例题:定义一个字典;存储元素出现的次数;如果他在这份列表当中;那么这个元素的次数加一;如果不在那么就将该元素的次数赋值为1;然后使用遍历根据字典中统计的次数返回第一个出现一次的元素的索引!

Copy
def firstUniqChar(s): # 统计字符频率 char_count = {} for char in s: if char in char_count: char_count[char] += 1 else: char_count[char] = 1 # 查找第一个唯一字符 for i, char in enumerate(s): if char_count[char] == 1: return i # 如果没有找到唯一字符,返回 -1 return -1 # 示例测试 print(firstUniqChar("leetcode")) # 输出: 0 print(firstUniqChar("loveleetcode")) # 输出: 2 print(firstUniqChar("aabb")) # 输出: -1
posted @   Gsupl.落浅~  阅读(12)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示

目录导航

一:队列的基本操作
二:队列刷题