LeetCode 第 53 场双周赛(一)

简介: LeetCode 第 53 场双周赛(一)

大家好,这里是一起打 Leetcode 竞赛系列文章的第 5 篇。

本周有周赛和双周赛,本文是对上午的双周赛 Biweekly Contest 53 的简单讲解和评论。以下会包括每一题的简单讲解,代码,难度分析,以及一些个人对这题的看法等,希望大家喜欢!

注意 : 题解并不一定都是最优解(代码以 pass 了 LeetCode 的 Oline Judge 为准),文章初衷是给读者们提供一定的想法和问题的解决方案。

前言 : 参加 Contest 的好处

  1. 每周抽点时间去练习和学习新的题目这对于个人的编程能力与问题解决能力都有很大的帮助。
  2. 在规定的时间内解决一定的题目,这和真实的OA (Online Assessment) 或者 Onsite 面试是一样的,可以把它当作一个很好的 Mock 练习机会。
  3. 当你有碰到做不出的题目的时候,你能知道自己的弱项在哪里,然后可以根据这进行加强和练习,比赛是一面给自己的镜子。

对本场比赛的一些看法

本场比赛难度相对比较正常,都是比较常规的题目,第三题稍微有点难度需要一点思考。

1876. 简单的暴力签到题1877. 一道贪心和双指针题目1878. 一道观察型的题目1879. 使用 bit 进行压缩的DP题目


1876 Substrings of Size Three with Distinct Characters

题意:

给你一个字符串,对于这个字符串每个长度为3的子字符串,如果此子字符串没有重复的字母它就是好的,问有多少个好的子字符串?例子:xyzzaz : xyz,yzz,zza,zaz这里只有 xyz 是好的

思路:

  1. 对于每个子字符串看看他们有没有重复的即可,为了方便可以直接使用Set,如果Set的size是3,它就是好的

代码:

classSolution {

 publicintcountGoodSubstrings(Strings) {

   intres=0;

   for (inti=0; i<s.length() -2; i++) {

     Set<Character>set=newHashSet<> ();

     //以 i 作为子字符串的开头,子字符串是 S[i,i+2]

     set.add(s.charAt(i));

     set.add(s.charAt(i+1));

     set.add(s.charAt(i+2));

     if (set.size() ==3) res++;

   }

   returnres;

 }

}

空间复杂度和时间复杂度:

  • 时间复杂度:O(n)
  • 空间复杂度:O(1)
目录
相关文章
|
安全 jenkins 网络安全
Jenkins中node节点添加之SSH方式2
Jenkins中node节点添加之SSH方式2
723 1
|
物联网 Java Linux
luajit简介
luajit简介
434 2
|
数据采集 小程序 数据可视化
策略篇1:消费者运营是什么? 解读产品Quick Audience | 《零售数据中台通关指南》
本篇主要介绍了全域营销典型场景和全域营销解决方案。
策略篇1:消费者运营是什么? 解读产品Quick Audience | 《零售数据中台通关指南》
|
Java Android开发 iOS开发
深入探讨移动操作系统的性能优化:安卓与iOS的对比分析
在现代移动设备中,操作系统的性能优化至关重要。本文从系统架构、内存管理、电池续航和应用程序运行效率等多个维度,深入探讨了安卓(Android)和iOS两大主流移动操作系统的优化策略及其实际效果,旨在为开发者和用户提供更清晰的了解和选择依据。
1095 27
|
7月前
|
人工智能 供应链 API
反向海淘实战:Pandabuy、Hoobuy、CNFans 代购集运系统搭建真实体验
2025年,反向海淘成为新趋势。CSDN博主耗时2个月,模拟留学生、海外华人等场景,深度体验Pandabuy、Hoobuy、CNFans三大代购平台。Pandabuy极简易用,Hoobuy稳健实用,CNFans技术强大。通过真实案例分析,探讨各平台优劣及未来AI发展趋势,帮助用户避开常见陷阱,选择最适合的购物方案。
1105 1
|
7月前
|
存储 机器学习/深度学习 数据建模
数据建模入门指南:从懵懂小白到高手的第一步
数据建模入门指南:从懵懂小白到高手的第一步
1084 15
|
9月前
|
机器学习/深度学习 人工智能 编解码
StereoCrafter:腾讯开源将任意2D视频转换为立体3D视频的框架,适用于Apple Vision Pro等多种显示设备
StereoCrafter 是腾讯开源的框架,能够将单目2D视频转换为高保真度的立体3D视频,适用于多种显示设备。
499 8
StereoCrafter:腾讯开源将任意2D视频转换为立体3D视频的框架,适用于Apple Vision Pro等多种显示设备
|
存储 安全 容灾
同步与备份
【7月更文挑战第1天】同步与备份
563 70
|
分布式计算 Oracle NoSQL
DataX教程(01)- 入门
DataX教程(01)- 入门
8977 0
DataX教程(01)- 入门
|
12月前
|
运维 安全 网络协议
Python 网络编程:端口检测与IP解析
本文介绍了使用Python进行网络编程的两个重要技能:检查端口状态和根据IP地址解析主机名。通过`socket`库实现端口扫描和主机名解析的功能,并提供了详细的示例代码。文章最后还展示了如何整合这两部分代码,实现一个简单的命令行端口扫描器,适用于网络故障排查和安全审计。
221 0