题目:
解析:
代码:
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
相关推荐
手写码匠1 分钟前
华为云Flexus+DeepSeek征文|Agent 记忆系统实战:用 DeepSeek-R1/V3 + Dify 会话变量打造跨会话长期记忆Olafur_zbj20 分钟前
【AI】CUDA编程中的维度坚持编程的菜鸟1 小时前
模拟实现memcpywabs6661 小时前
关于图论【最短路径之Bellman_ford 算法|卡码网94.城市间货物运输的思考】MrZhao4001 小时前
On-Policy Distillation(OPD):为什么大模型后训练要在学生自己的轨迹上蒸馏?朱峥嵘(朱髯)1 小时前
数据库如何根据全表 NDV 估算子集的 NDVjjjava2.01 小时前
牛客算法题(第四期)雪碧聊技术1 小时前
力扣 回溯法 | LCR 020. 回文子串wabs6662 小时前
关于哈希表【力扣454.四数相加II的思考】我能坚持多久2 小时前
优选算法——专题一双指针(上):附四道例题详解
