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

算法竞赛入门:UVA11572 Unique Snowflakes

UVA11572 Unique Snowflakes

题目大意:给定 n 个数,找尽量长的一个连续子序列,使该子序列没有重复的元素。

可以使用双指针法解决问题,移动指针保证两个指针形成的子区间没有重复的元素,C++ 可以用到 STL set ,Java 语言可以使用 HashSet 存储元素(当然用哈希表代替也可以)。指针 i 指向区间左端点,指针 j 指向区间右端点,j 不断尝试向右侧扩展区间,将新数加入到 Set 中,如果发现元素有重复,则移动 i 指针缩短区间长度。

代码实现:

import java.util.*; class Main{ public static void main(String[] args){ Scanner sc=new Scanner(System.in); int n,t; t=sc.nextInt(); for(int T=0;T<t;T++) { n=sc.nextInt(); int[] a = new int[n]; for (int i = 0; i < n; i++) { a[i] = sc.nextInt(); } Set<Integer> S=new HashSet<>(); int i=0,j=0,ans=0; for( ;j<n;j++){ while(i<j&&S.contains(a[j])){ S.remove(a[i]); i++; } S.add(a[j]); ans=Math.max(ans,j-i+1); } System.out.println(ans); } } }

实际上,本题还有其他解法,例如二分法,map 等。二分法的时间性能与双指针法差别不大,感兴趣的朋友可以用其他解法做出。

双指针法本身并不难理解,也比较容易编程实现,不管是面试题还是算法竞赛题目中考察的都比较多。这种算法的编程的套路比较固定,对于这类题型,只需要分析清楚题目的应用场景,选择适合的做法即可。

http://www.jsqmd.com/news/1065949/

相关文章:

  • sula与Umi集成教程:使用umi-plugin-sula快速搭建企业级项目
  • Element Plus:Vue 3时代的企业级UI组件库全面解析
  • windows下Redis安装的教程
  • 湘潭市2026年本地黄金回收靠谱门店 白银回收+铂金回收优选门店汇总及电话地址指南TOP5排行榜推荐 - 大熊猫898989
  • 深聊高效便捷的南非整柜一体化服务品牌推荐 - mypinpai
  • 铜陵市2026年本地黄金回收靠谱门店 白银回收+铂金回收优选门店汇总及电话地址指南TOP5排行榜推荐 - 大熊猫898989
  • 正规猎头公司全国布局观察:专业合规成选择核心 - 得赢
  • 自动驾驶颠簸路面感知稳定性技术方案
  • Openclaw安装与CLI自动化运维实战指南
  • 漳平市2026年本地黄金回收+白银回收+铂金回收实力门店TOP5排行榜 K金+金条+银条回收及电话地址推荐 - 盛世金银回收
  • 南非整柜末端履约站点哪家强?明瑞货运靠谱吗? - mypinpai
  • 设计模式——访问者模式
  • 腾冲市2026年本地黄金回收+白银回收+铂金回收实力门店TOP5排行榜 K金+金条+银条回收及电话地址推荐 - 盛世金银回收
  • 全方位解析闲置二手交易系统:重塑闲置经济与社交互动新格局
  • ComfyUI-KJNodes模型优化节点:5大核心策略解锁AI图像生成性能新高度
  • AI编程中的模型协同工程:自举架构与任务切片实践
  • 西昌市2026年本地黄金回收+白银回收+铂金回收实力门店TOP5排行榜 K金+金条+银条回收及电话地址推荐 - 盛世金银回收
  • 专业级开源RTSP摄像头管理系统:camera.ui完全部署与实战指南
  • 天水市2026年本地黄金回收+白银回收+铂金回收实力门店TOP5排行榜 K金+金条+银条回收及电话地址推荐 - 盛世金银回收
  • Playwright替代Selenium:网页自动化新范式与生产实践
  • 从零搭建DEMO9S08EL32开发环境:CodeWarrior安装、驱动配置与LED闪烁实战
  • SQL双注入攻击原理与实战:从数据库错误中窃取敏感数据
  • 如何用eSearch终极解决古籍竖排文字识别难题:简单5步告别传统OCR痛点
  • 滕州市2026年本地黄金回收+白银回收+铂金回收实力门店TOP5排行榜 K金+金条+银条回收及电话地址推荐 - 盛世金银回收
  • 衢州市2026年本地黄金回收靠谱门店 白银回收+铂金回收优选门店汇总及电话地址指南TOP5排行榜推荐 - 大熊猫898989
  • Lector电子书阅读器完全架构解析:基于Qt的高性能跨平台实现
  • 襄阳市2026年本地黄金回收靠谱门店 白银回收+铂金回收优选门店汇总及电话地址指南TOP5排行榜推荐 - 大熊猫898989
  • 铜仁市2026年本地黄金回收靠谱门店 白银回收+铂金回收优选门店汇总及电话地址指南TOP5排行榜推荐 - 大熊猫898989
  • HCS08调试器SPI与定时器模块仿真实战指南
  • 酷安UWP终极指南:5分钟在Windows电脑上畅享完整社区体验