题目:
解析:
代码:
javaprivate List<String> ret; private StringBuffer path; public List<String> letterCasePermutation(String s) { ret = new ArrayList<>(); path = new StringBuffer(); dfs(s,0); return ret; } private void dfs(String s, int pos){ if(pos == s.length()){ ret.add(path.toString()); return; } char ch = s.charAt(pos); //改变 if(ch < '0' || ch > '9'){ char tmp = change(ch); path.append(tmp); dfs(s,pos+1); path.deleteCharAt(path.length()-1);//恢复现场 } //不变 path.append(ch); dfs(s,pos+1); path.deleteCharAt(path.length()-1);//恢复现场 } private char change(char ch){ if(ch >= 'a' && ch <= 'z') return ch -= 32;//小写转大写 else return ch += 32;//大写转小写 }
穷举vs暴搜vs深搜vs回溯vs剪枝系列一>字母大小写全排列
robin_suli2025-01-10 14:10
相关推荐
Cthy_hy11 小时前
拓扑排序超详解:原理 + Kahn 贪心算法三品吉他手会点灯11 小时前
C语言学习笔记 - 43.运算符与表达式 - 运算符1 - 运算符的分类和简单介绍VkN2X2X4b11 小时前
算法复杂度的实验验证与误差分析的技术8其利天下技术11 小时前
风扇灯无刷电机自适应算法实战指南8Qi812 小时前
LeetCode 494:目标和(Target Sum)—— 题解 ✅hujinyuan2016012 小时前
2026年3月 中国电子学会青少年软件编程(Python)三级考试试卷 真题及答案froyoisle12 小时前
CSP-J 历年复赛 T1 及解析(2019~2025)珊瑚里的鱼13 小时前
【动态规划】打家劫舍Ⅱchao18984413 小时前
SGM(Semi-Global Matching)立体匹配算法 — C++ 实现黎阳之光13 小时前
数智赋能水厂全链路安全|黎阳之光以视频孪生技术落地供水精细化管控
