尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

scanner、arrylist、反转数组、双指针轮转数组问题

scanner、arrylist、反转数组、双指针轮转数组问题
📅 发布时间:2026/7/30 18:46:27

一、scanner使用

固定格式

import java.util.Scanner; // 1. 导入类 public class Example { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 2. 创建对象 System.out.println("请输入月份:"); int month = scanner.nextInt(); // 3. 读取整数输入(此时写这句话) // 后续使用 month 做逻辑处理... scanner.close(); // 最后关闭扫描器,释放资源 } }

二、反转数组for循环

随机生成了含有五个数字的数组

// 使用 for 循环反转数组 int left = 0; int right = arr.length - 1; while (left < right) { // 交换左右指针指向的元素 int temp = arr[left]; arr[left] = arr[right]; arr[right] = temp; left++; right--; } /* ---------- 原地双指针交换函数 ---------- */ private void reverse(char[] arr, int l, int r) { while (l < r) { char tmp = arr[l]; arr[l] = arr[r]; arr[r] = tmp; l++; r--; }

三、ArrayList方法

1.arrylist统一格式:

  • E: 泛型数据类型,用于设置 objectName 的数据类型,只能为引用数据类型。
  • objectName: 对象名。
import java.util.ArrayList; // 引入 ArrayList 类 ArrayList<E> objectName =new ArrayList<>(); // 初始化

2.arrylist方法

①.add(Object element) 向列表的尾部添加指定的元素。

②.size() 返回列表中的元素个数。

③.get(int index) 返回列表中指定位置的元素,index从0开始。

四、双指针轮转数组问题

while (i < j) { int temp = nums[i]; nums[i++] = nums[j]; nums[j--] = temp;

双指针应用的问题类型:

while (i < j`的双指针套路,核心思想是:

把「两端向中间夹」或「两段区间互换」变成 O(n) 一次扫描。

除了刚才的 数组翻转,下面这些都是高频出现、面试常考的双指针场景:

1. 回文判定
从两头往中间扫,比较字符是否相同。
例题:125. 验证回文串、680. valid palindrome II。

2. 有序数组两数之和
头尾指针,和太大就右移尾,和太小就左移头。
例题:167. Two Sum II。

3. 三数 / 四数之和(n-Sum 套路)
先排序,固定一个数,剩下区间用双指针找两数之和。
例题:15. 3Sum、18. 4Sum。

4. 快慢指针(对撞型变种)
快指针先走 k 步,再两指针同步走,快到底时慢指针就在倒数第 k 个。
例题:19. 删除链表倒数第 N 个结点、876. 链表中间结点。

5. 容器盛水最多(面积最大)
头尾各一根柱子,每次移动短的那根,计算面积更新最大值。
例题:11. Container With Most Water。

6. 滑动窗口「缩左边界」时也用双指针
右指针扩张,满足条件后左指针收缩,区间统计最值。
例题:3. 无重复字符的最长子串、76. 最小覆盖子串。

7. partition 操作(快速排序 / 荷兰国旗)
左右指针把「小于基准」和「大于基准」分开。
例题:75. Sort Colors、215. 数组第 K 大元素。

8. 合并两个有序数组 / 链表
从后往前或从前往后双指针,谁小移谁。
例题:88. Merge Sorted Array、21. Merge Two Lists。

9. 二分查找本身就是双指针
左、右指针向中间夹,找目标或插入位置。

10. 旋转数组的「三次翻转」
189 题,区间翻转用 i < j 双指针原地完成。

相关新闻

  • PDF转Word免费在线转换方法详解(含扫描件OCR)
  • 2026靠谱的微信投票小程序怎么选
  • 什么是系统运行与维护?

最新新闻

  • 算法面试——二叉树:最大深度、验证 BST、层序遍历
  • 海关AEO高级认证实战信息系统安全要求达标全路径
  • 2026年英语听说学习工具深度测评:三大主流APP技术解析与实测效果
  • 训练数据溯源断链?揭秘开源模型中隐藏的13种隐式数据指纹,以及如何用SHA-3+ZKP实现不可抵赖审计
  • 怎么挑成都别墅改造公司?2026年牢记这几家企业! - 新闻快传
  • 2026上海黄金回收门店调研|市场数据、乱象分析与优质门店测评 - 全国二奢机构参考

日新闻

  • 终极TeamSpeak3音乐机器人搭建指南:5分钟实现语音聊天室音频播放
  • 广州海珠区内搬家攻略,平价靠谱搬家服务商推荐,专业打包搬运省心避坑全流程指南 - 厚道搬家
  • 大语言模型入门指南:从零到精通掌握AI核心技术的5大步骤

周新闻

  • 大连理工大学与东京大学联手打造的“主动型AI助手“
  • 170.2026年国家级科研瓶颈:超精密单点金刚石切削(SPDT)光学表面生成
  • SongBloom:革命性歌曲生成框架深度解析——如何通过交织自回归与扩散模型创作完整音乐

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号