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

滑动窗口+子串+普通数组算法

滑动窗口:

无重复字符的最长子串

思路:特点就是Set<Character>  

合并区间:

基础知识:对于这种区间带区间类型int[][] nums,可以这样考虑for(int[] p : nums) 这里的p代表的单个区间的索引:例如p[0] = 1 p[1] = 3;区间起始位置排序 Array.sort(nums,(p,q) -> p[0]-q[0])Arrays.deepToString(result)
return ans.toArray(new int[ans.size()][]);
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;public class Solution {public static int[][] merge(int[][] nums){// 比较两个区间起始位置,从小到大排列Arrays.sort(nums,(p,q)->p[0]-q[0]);List<int[]> ans = new ArrayList<>();// 增强型for循环for(int[] p:nums){int m  = ans.size();if(m>0 && p[0] <= ans.get(m-1)[1]){ans.get(m-1)[1] = Math.max(ans.get(m-1)[1],p[1]);}else{ans.add(p);}}// List列表转为数组return ans.toArray(new int[ans.size()][]);}public static void main(String[] args){Solution solution = new Solution();int[][] nums = {{1,3},{2,6},{8,10},{15,18}};int[][] result = solution.merge(nums);System.out.println(Arrays.deepToString(result));}}

字节面试题

给定数组,奇数在前,偶数在后

import java.util.Arrays;
public class Solution {public static int[] jiaohuang(int[] nums){if(nums.length<2||nums == null){return nums;}int left = 0;int right = nums.length-1;while (left<right){//  选定偶数while (left<right && nums[left] % 2 !=0){left++;}//  选定奇数while (left<right && nums[right]%2 == 0){right--;}if(left < right){int temp = nums[left];nums[left] = nums[right];nums[right] = temp;left++;right--;}}return nums;}public static void main(String[] args){Solution solution  = new Solution();int[] nums = {1,2,3,4};int[] result = solution.jiaohuang(nums);System.out.print(Arrays.toString(nums));}
}

http://www.dtcms.com/a/344628.html

相关文章:

  • Spring AI调用本地大模型实战
  • 【LINUX】CentOS7在VMware15中,从命令行界面切换到图形界面的异常汇总
  • Day10 Go语言深入学习(2)
  • 零成本 Redis 实战:用Amazon免费套餐练手 + 缓存优化
  • skywalking-agent与logback-spring.xml中的traceId自动关联的原理
  • 使用C#的 PdfDocument 实现 PDF 页眉页脚的编辑
  • 我用Photoshop Firefly+Blender,拯救被环境毁掉的人像大片
  • Blender模型动画导入到UE5
  • uniappx新增的几个api
  • AI + 教育:个性化学习如何落地?教师角色转变与技术伦理的双重考验
  • 文字提取技术让文档实现数字化效率翻倍-文字识别接口
  • Kubernetes概念:ETCD 的本质与备份恢复实践
  • 永磁同步电机控制算法-反馈线性化滑模直接转矩控制
  • 智慧工厂烟雾检测:全场景覆盖与精准防控
  • 全运会倒计时80天,国鑫服务器如何扛起粤港澳的“数字火炬”?
  • Roadmap:一年实现安全漏洞防治自动化
  • MCP 与 Function Calling 打开真实世界的两种“母体”方式
  • 软件产品确认测试:系统长期运行稳定性(72 小时)测试
  • 集成算法学习笔记
  • Unreal Engine UStaticMeshComponent
  • 线性回归:机器学习中的基础建模工具
  • LeetCode100-76最小覆盖子串
  • C++ 面向对象之继承
  • 【DataGrip】连接达梦数据库后,能查询数据但是看不到表的几种情况分析,达梦数据库驱动包下载DmJdbcDriver18.jar
  • Leetcode—120. 三角形最小路径和【中等】(腾讯校招面试题)
  • LeetCode100-53最大子数组和
  • 数据工程师——ETL
  • 开发避坑指南(35):mybaits if标签test条件判断等号=解析异常解决方案
  • 【Protues仿真】基于AT89C52单片机的LCD液晶显示屏显示控制
  • 基于单片机的电子血压计设计方案