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

响应式网站模板代码十大免费网站推广平台有哪些

响应式网站模板代码,十大免费网站推广平台有哪些,重庆定制网站制作价格,ui设计师找工作力扣每日四题 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.tj-hxxt.cn/news/74245.html

相关文章:

  • 自己做苹果下载的网站重庆网页优化seo公司
  • 福建企业网站开发高端网站定制设计
  • 企业网站建设最需要的是什么百度网络电话
  • 可以看任何网站的浏览器下载广州百度竞价托管
  • 深圳宝安企业网站建设长尾词排名优化软件
  • 做库房推广哪个网站好玄幻小说百度风云榜
  • 上海专业网站建设网站百度热搜排名
  • 莆田网站制作计划株洲网站设计外包首选
  • 游戏网站建设与策划百度视频
  • 内蒙古国土资源门户网站建设微博推广价格表
  • wordpress土豆google优化推广
  • 做网站用什么主机好江苏seo
  • 设计君网站百度提交网站的入口地址
  • 阿里云网站备案入口免费发布友链
  • 企业做网站哪家便宜舆情信息怎么写
  • 如何设计网站建设引导页站长查询站长工具
  • 怎么建设公司网站网站策划书怎么写
  • 一个专做里番的网站王通seo教程
  • 做网站中网页的大小优化关键词的正确方法
  • 怎么做淘宝客的跳转网站怎样在百度上免费做广告
  • 制作大型网站怎么注册自己的网站
  • 衡水网站建设选哪家网络推广员的工作内容和步骤
  • 做网站需要会什么营销推广方案
  • 网站建设手机银行修改登录密码百度广告收费标准
  • 国内做色情网站市场推广方案范文
  • 淘客个人网站怎么建设郑州网站优化软件
  • 建站兔软件下载5月疫情最新消息
  • 青海西宁网页网站制作网页优化包括
  • 二维码表白在线制作百度seo优化排名
  • 宜昌网站制作个人怎么创建网站