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

【力扣】面试题 01.04. 回文排列

一、题目表述

1、给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。

2、回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。

3、回文串不一定是字典当中的单词。

示例1:

输入:“tactcoa”
输出:true(排列有"tacocat"、“atcocta”,等等)

二、代码

class Solution {public boolean canPermutePalindrome(String s) {HashMap<Character,Integer> hashMap = new HashMap<>();for (int i = 0; i < s.length(); i++) {//getOrDefault,获取指定key的value,如果找不到就返回默认值hashMap.put(s.charAt(i),hashMap.getOrDefault(s.charAt(i),0)+1);}//记录有多少单个的字符int odd =  0;for(int val : hashMap.values()){if(val % 2 == 1){++odd;if(odd>1){return false;}}}return true;}
}

三、笔记反思

1、判断某字符串是否为某个回文串的排列之一,核心逻辑:最多只能有一个字符出现奇数次
2、使用 HashMap<Character, Integer> 存储每个字符的出现次数。
3、getOrDefault(key, defaultValue) 方法:若 key 存在,返回对应值;否则返回默认值 defaultValue。

相关文章:

  • 误差反向传播法
  • Linux中的常用命令
  • Linux 6.15 内核发布,新功能
  • nvm和node的环境配置与下载
  • 数据结构与算法Day3:绪论第三节抽象数据类型、算法及其描述
  • Python打卡训练营学习记录Day38
  • 鸿蒙 Form Kit(卡片开发服务)
  • 多空短线决策副图指标,通达信炒股软件指标操盘图文教程
  • rabbitmq的高级特性
  • 016搜索之广度优先BFS——算法备赛
  • UPS的工作原理和UPS系统中旁路的作用
  • 数据库优化常用技巧【面试】
  • 上讯信息运维管理审计系统imo.php存在命令执行漏洞(CNVD-2025-07703)
  • hive 笔记
  • JAVA运算符详解
  • 实验设计与分析(第6版,Montgomery)第3章单因子实验:方差分析3.11思考题3.4 R语言解题
  • 如何彻底禁用WordPress中的评论
  • 12. CSS 布局与样式技巧
  • [ Qt ] | 常见控件(二): window相关
  • 每天掌握一个Linux命令 - sqlite3
  • 什么是企业年金/seo技术交流
  • 可以做招商的网站/抖音怎么推广
  • 网站开发工资一般多少/天津seo排名收费
  • 学习html的网站/微信指数查询
  • 深圳网站开发公司 有哪些/重庆seo薪酬水平
  • 合肥制作手机网站/站长工具爱站