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

做自媒体需要哪些网站深圳网站设计专家乐云seo

做自媒体需要哪些网站,深圳网站设计专家乐云seo,沈阳高端网站建设公司,各大网站投稿邮箱力扣每日四题 228. 汇总区间-简单1431. 拥有最多糖果的孩子-简单637. 二叉树的层平均值-简单49. 字母异位词分组-中等总结 228. 汇总区间-简单 题目描述: 给定一个 无重复元素 的 有序 整数数组 nums 。 返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也…

力扣每日四题

  • 228. 汇总区间-简单
  • 1431. 拥有最多糖果的孩子-简单
  • 637. 二叉树的层平均值-简单
  • 49. 字母异位词分组-中等
  • 总结

228. 汇总区间-简单

题目描述:
给定一个 无重复元素 的 有序 整数数组 nums 。
返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也就是说,nums 的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于 nums 的数字 x 。
列表中的每个区间范围 [a,b] 应该按如下格式输出:
“a->b” ,如果 a != b
“a” ,如果 a == b

题解:
维护一个起点变量和终点变量,遍历数组时遇到的新元素如果不等于终点变量加一就将之前维护的起点到终点放入结果数组中

代码(Go):

func summaryRanges(nums []int) []string {sce := []string{}if len(nums) == 0{return sce}left := nums[0]right := left - 1for i := 0;i < len(nums);i++{if nums[i] == right + 1{right = nums[i]}else{if left != right{s := fmt.Sprintf("%d->%d",left,right)sce = append(sce,s)left = nums[i]right = left}else{s := fmt.Sprintf("%d",left)sce = append(sce,s)left = nums[i]right = left}}}if left != right{s := fmt.Sprintf("%d->%d",left,right)sce = append(sce,s)}else{s := fmt.Sprintf("%d",left)sce = append(sce,s)}return sce
}

1431. 拥有最多糖果的孩子-简单

题目描述:
给你一个数组 candies 和一个整数 extraCandies ,其中 candies[i] 代表第 i 个孩子拥有的糖果数目。
对每一个孩子,检查是否存在一种方案,将额外的 extraCandies 个糖果分配给孩子们之后,此孩子有 最多 的糖果。注意,允许有多个孩子同时拥有 最多 的糖果数目。

题解:
先遍历一次数组记录最大值,并把糖果分配给所有孩子,再遍历一次数组看分配糖果后哪个孩子的糖果数大于等于最大值

代码(Go):

func kidsWithCandies(candies []int, extraCandies int) []bool {max := 0for i,v := range candies{if v > max{max = v}candies[i] = v + extraCandies}sce := make([]bool,len(candies))for i,v := range candies{if v >= max{sce[i] = true}else{sce[i] = false}}return sce
}

637. 二叉树的层平均值-简单

题目描述:
给定一个非空二叉树的根节点 root , 以数组的形式返回每一层节点的平均值。与实际答案相差 10-5 以内的答案可以被接受。

题解:
求层平均值直接层序遍历的同时记录每层的节点个数并把同层的节点值相加保存下来就可以了。官方题解的深度优先搜索和广度优先搜索的代码都比较复杂,感觉不如层序遍历

代码(Go):

func averageOfLevels(root *TreeNode) []float64 {quene := []*TreeNode{root}num := 1re := []float64{}for len(quene) > 0{node := quene[0:num]quene = quene[num:]var sum float64 = 0for _,v := range node{sum += float64(v.Val)num--if v.Left != nil{quene = append(quene,v.Left)num++}if v.Right != nil{quene = append(quene,v.Right)num++}}re = append(re,sum/float64(len(node)))}return re
}

49. 字母异位词分组-中等

题目描述:
给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。
字母异位词 是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次。

题解:
一看就是哈希表,但是不再是两两对比了,所以需要建立一个用数组做索引的哈希表,通过计数排序的思想进行字符串对比,最后遍历哈希表放进返回数组。一开始哈以为官方会有更好的办法,每有一种字母异位词就要建一个数组做索引占空间好大,结果官方也是这么做的。

代码(Go):

func groupAnagrams(strs []string) [][]string {dict := map[[26]int][]string{}for _, s := range strs {arr := [26]int{}for _, v := range s {arr[v - 'a']++}dict[arr] = append(dict[arr], s)}re := make([][]string, 0, len(dict))for _, v := range dict {re = append(re, v)}return re
}

总结

这两天先捏一捏软柿子,从简单慢慢往难的过度,前两天被几道中等题迎头痛击

http://www.hkea.cn/news/195558/

相关文章:

  • 网站开发都做什么平台推广精准客源
  • 网站建设共享ip宁波seo搜索引擎优化
  • 学校网站建设必要性搜索引擎排名
  • 哪里有做区块链网站的百度网址大全在哪里找
  • 加盟平台网站怎么做竞价托管多少钱一个月
  • wordpress 微信 代码网站关键词怎么优化排名
  • 网站推广维护考研培训班哪个机构比较好
  • 网站后台生成器人工智能培训班收费标准
  • 在线做app的网站武汉网络营销公司排名
  • 了解深圳网站页面设计潍坊百度关键词优化
  • 制作网站怎样找公司来帮做seo词条
  • 网络销售有哪些站长工具seo排名
  • 做房产中介网站怎么注册一个自己的网站
  • 天津网站设计成功柚米全网推广成功再收费
  • 建设公司网站靠谱吗企业网站设计制作
  • 电子商务学什么课程内容兰州搜索引擎优化
  • 沧州网站建设制作设计优化能打开的a站
  • 石家庄网站建设推广报价怎么让百度快速收录网站
  • 建设局网站上开工日期选不了制作网站需要多少费用
  • 犬舍网站怎么做网页推广怎么做
  • 镇江核酸检测最新通知如何优化网页加载速度
  • wpf入可以做网站吗竞价托管外包费用
  • 公司设计网站需要包含什么资料优化排名软件
  • 日本樱花云服务器wan亚马逊seo关键词优化软件
  • layui框架的wordpress厦门站长优化工具
  • 微网站设计尺寸培训课程总结
  • 保险平台官网湖北搜索引擎优化
  • 西安微信小程序制作公司关键词优化方法
  • 手机网站建设用乐云seo搜索引擎是什么意思啊
  • 昆明做大的网站开发公司google网页搜索