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

网站建设工作总结范文百度seo营销

网站建设工作总结范文,百度seo营销,mvc4做网站五,银座网上商城官网今日题目 150. 逆波兰表达式求值 题目链接:150. 逆波兰表达式求值 - 力扣(LeetCode) 思考:本题首先要理解表达式的运算顺序,观察题目给出的示例可以发现,每当遍历到一个运算符号的时候,都是此运…

今日题目

150. 逆波兰表达式求值

题目链接:150. 逆波兰表达式求值 - 力扣(LeetCode)

思考:本题首先要理解表达式的运算顺序,观察题目给出的示例可以发现,每当遍历到一个运算符号的时候,都是此运算符的前面两个数字进行该运算操作,比如遇到["a","b","+"],其实就是a+b这个运算表达式。每次需要计算这样的a+b并用计算结果替换这三个元素的位置,再继续找下一个运算符。

比如,["2","1","+","3","*"],从头遍历,第一个运算符是"+",所以先计算2+1=3,其实就变成了["3","3","*"],那么接下来就是3*3=9,因此输出9。

按照这个逻辑,只需要存储数字,遇到运算符,就把前面存储的两个数字取出来,做运算,运算结果再存回去。

代码:

class Solution:def evalRPN(self, tokens: List[str]) -> int:stack = []for token in tokens:if token.isdigit() or (len(token) > 1 and token[1].isdigit()):stack.append(token)else:num1 = stack.pop()num2 = stack.pop()stack.append(str(int(eval(num2+token+num1))))return int(stack.pop())
239. 滑动窗口最大值 

题目链接:239. 滑动窗口最大值 - 力扣(LeetCode)

思考:本题滑动窗口在数组中滑动时,窗口左边要弹出元素,右边要进入元素,因此使用队列来表示窗口比较合适。如果用窗口直接存元素值的话,还需要在窗口中比较所有元素的大小,由于窗口按顺序滑动,比较元素大小其实通过原始数组的下标获取元素值就可以了,因此考虑使用队列存储元素的下标就行。

首先考虑入队,每次移动一个位置,就要有一个新的元素入队。

元素入队后,当队列中的元素数超过k时,就要弹出最左侧的元素,以此保证队列中最多有k个元素。

当队列移动到的右侧位置达到k-1时,即队列已经开始走过k个元素了,每次都要记录一个当前队列中的最大值,作为结果。

如何保证被记录的元素在相邻的k个元素中为最大值呢?只需要在元素入队时进行判断,如果即将入队的元素比前一个入队的元素数值大,那么就弹出前一个元素。这样保证队中的元素始终都是越来越大的。而队中的第一个元素,就是前面k个元素中的最大值。

代码:

class Solution:def maxSlidingWindow(self, nums: List[int], k: int) -> List[int]:ans = []q = deque()for i, x in enumerate(nums):# 1.入while q and nums[q[-1]] <= x:q.pop()q.append(i)# 2.出if i-q[0] >= k:q.popleft()# 3.记录答案if i >= k-1:ans.append(nums[q[0]])return ans
347.前 K 个高频元素

题目链接:347. 前 K 个高频元素 - 力扣(LeetCode)

思考:这道题自己写很难写出来,我也是看了答案才理解思路。

这道题要做的就是1、统计元素出现的频率;2、对频率排序;3、取频率最大的前k个,输出对应的元素。

首先统计频率很容易会想到用哈希表,由于本题数组长度会很大,用数组的形式进行统计的话很不方便,因此考虑用字典统计,元素值为key,频次为value。

随后需要对频率排序,因为频率保存在了字典的value中无法直接排序,因此可以考虑新建一个字典,以频次为key,value为元素。

这样就可以对key进行排序,即频率排序。用一个list存储排序后的频率,由小到大排序,因此频率最大的元素对应list的最后位置。

每次只需要记录最大频率对应的元素,记录一次就可以将list的末位元素移除。要统计k个频率最大元素,所以统计k次就好。这里要注意的问题是,可能存在多个元素出现的频率一样,这样的话,当这个频率在前k个里面时,一下就增加了多个元素,其实已经找到了k个元素了,但是统计次数还没有到k次,这样就会出错。因此,在统计时需要保证key存在,否则无需统计k次,而且当多个元素频率相同时,这些元素都会被记录,但是只能给出k个元素,因此对于result要做切片保证只给k个结果。

代码:

class Solution:def topKFrequent(self, nums: List[int], k: int) -> List[int]:# 使用字典统计数字出现次数time_dict = defaultdict(int)for num in nums:time_dict[num] += 1# 更改字典,key为出现次数,value为相应的数字的集合index_dict = defaultdict(list)for key in time_dict:index_dict[time_dict[key]].append(key)# 排序key = list(index_dict.keys())key.sort()result = []cnt = 0# 获取前k项while key and cnt != k:result += index_dict[key[-1]]cnt += 1key.pop()return result[: k]


文章转载自:

http://ORaBP4mc.snrbL.cn
http://bHeMir9X.snrbL.cn
http://ZUaw1N09.snrbL.cn
http://kSQPEjYg.snrbL.cn
http://fijnd5nO.snrbL.cn
http://iq1snNEz.snrbL.cn
http://rVkdrgSp.snrbL.cn
http://rz9vSuwS.snrbL.cn
http://7irkS2PC.snrbL.cn
http://SFHkTwb7.snrbL.cn
http://NBmrRBFy.snrbL.cn
http://KtRVsNoK.snrbL.cn
http://8OXM21pQ.snrbL.cn
http://N9xFb2GA.snrbL.cn
http://tsHbw2HT.snrbL.cn
http://dny4eHNG.snrbL.cn
http://YrmqOzkU.snrbL.cn
http://qyDWQ9yl.snrbL.cn
http://taBfpEhn.snrbL.cn
http://ktucE5pY.snrbL.cn
http://aDrFpRal.snrbL.cn
http://b2yU6k2y.snrbL.cn
http://M1kDEdvS.snrbL.cn
http://fdvnW6O0.snrbL.cn
http://RcjFMan7.snrbL.cn
http://LeIZideQ.snrbL.cn
http://ZPWISV4F.snrbL.cn
http://qb0LmTXy.snrbL.cn
http://3eYI0Ek0.snrbL.cn
http://R3fs1b5G.snrbL.cn
http://www.dtcms.com/wzjs/736252.html

相关文章:

  • 网站调优技能网站代运营方案
  • 制造业网站建设wordpress插件太多
  • 巨野住房和城乡建设局网站可以做区位分析的网站
  • 怎么找网站是由什么建的如何破解wordpress主题
  • 怎么修改网站域名wordpress密码长度
  • 合肥瑶海区教育局官网seo公司 上海
  • 网站备案名称中国开头中国建设网官方网站6
  • 企业网站cms源码做网站怎么引流
  • xampp做网站可以吗wordpress php那个版本
  • 建站系统破解源码东方财富网官方网站首页
  • copyright 个人网站网页设计基础代码网站
  • 广东省网站备案要多久银川网站制作
  • 管理系统是网站吗制作一个网页需要花钱吗
  • wordpress iis建站怎么注册网络域名
  • 苏州建设交通学校网站首页小游戏网站代码
  • 微网站建设教程excel网站建设
  • 医院可以做网站吗范湖网站建设哪家便宜
  • 怎么来自己做网站优化专业商城网站设计制作
  • 闵行区网站设计株洲知名网站建设
  • 企业网站自助建wordpress一键生成app
  • 用asp做的几个大网站上海设计公司招聘
  • 公司以前做的免费网站太多_新网站搜索不到网站建设设计报告前言
  • ks2e做网站企业网站seo公司
  • 高德地图国际版哪里有做网站优化的公司
  • 百度网站建设策划书范文百度收录不了网站吗
  • scratch少儿编程网站网页制作基础步骤
  • 网站设计规划说明书有限公司英文缩写
  • 中国住建部网站查询网全国企业信用信息公示系统河南
  • 一站式网站开发中国菲律宾大使馆电话号码
  • 网站需求设计文档如何自己做网站手机