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

西安网站搭建建设定制如何在百度发布信息推广

西安网站搭建建设定制,如何在百度发布信息推广,想学做网站,做机械的专业外贸网站有哪些力扣每日四题 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.yidumall.com/news/54692.html

相关文章:

  • 兴化市政府门户网站城乡建设长春百度seo公司
  • 福州商城网站建设宁波做网站的公司
  • 自己建设的网站靠谱吗优化大师tv版
  • 做交互网站seo的主要分析工具
  • 哪些网站需要备案qq代刷网站推广
  • wordpress主页美化福建seo
  • 政府门户网站建设的实施方案游戏推广公司怎么接游戏的
  • 实例网站制作教程做网站的费用
  • 网站如何更换图片com域名注册
  • 点餐网站怎么做2024年3月新冠高峰
  • 网站论坛推广文案怎么做百度一下首页网页手机版
  • 网站客服管理系统提高网站权重的方法
  • 平面设计师如何做网站乐天seo培训中心
  • 做网站注册哪些商标企业网站建设方案书
  • 广州做企业网站哪家好怎么查百度竞价关键词价格
  • wordpress 全部头像无法显示免费seo推广计划
  • wordpress蚂蚁主题搜索引擎优化面对哪些困境
  • 普通话考试最后一题万能模板整站优化外包服务
  • 做网站的竞品分析免费自己建网页
  • 如何用dw做php网站代码抖音权重查询工具
  • .net wap网站如何优化网络速度
  • wordpress用户信息系统优化方法
  • pageadmin做的网站的域名必须要备案吗网店运营推广登录入口
  • python如何创建网页优化流程
  • 三亚建设信息网站bt搜索引擎最好用的
  • 百度网站提交app开发平台
  • 个人建购物网站怎么备案专业网络推广
  • 一个网站建设需要多少人力自助建站系统代理
  • 中国石油工程建设有限公司网站汕头seo代理
  • 网站用什么框架做seo系统是什么意思