给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串。返回所有可能得到的字符串集合。

示例1:
输入: S = “a1b2”
输出: [“a1b2”, “a1B2”, “A1b2”, “A1B2”]
输入: S = “3z4”
输出: [“3z4”, “3Z4”]
输入: S = “12345”
输出: [“12345”]

注意:

  • S 的长度不超过12
  • S 仅由数字和字母组成。
/*** @param {string} S* @return {string[]}*/
var letterCasePermutation = function(S) {};

个人解法

var letterCasePermutation = function(S) {//递归函数function digui(str1 , str2){if(str2 === ""){result.push(str1);return;}var arr = str2.split("");//对首字符进行判断if(arr[0].charCodeAt() >= 97 && arr[0].charCodeAt() <= 122){//首字符为小写字母digui(str1 + arr[0] , arr.join("").substring(1));digui(str1 + arr[0].toUpperCase() , arr.join("").substring(1));}else if(arr[0].charCodeAt() >= 65 && arr[0].charCodeAt() <= 90){//首字符为大写字母digui(str1 + arr[0] , arr.join("").substring(1));digui(str1 + arr[0].toLowerCase() , arr.join("").substring(1));}else{//首字符为数字digui(str1 + arr[0] , arr.join("").substring(1));}}var result = [];digui("" , S);return result;
};

★LeetCode(784)——字母大小写全排列(JavaScript)相关推荐

  1. LeetCode 784. 字母大小写全排列

    784. 字母大小写全排列 [回溯法] class Solution {// 回溯 4:30 6int n;StringBuilder sb = new StringBuilder();List< ...

  2. LeetCode 784. 字母大小写全排列(位运算回溯)

    1. 题目 给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串.返回所有可能得到的字符串集合. 示例: 输入: S = "a1b2" 输出: [&q ...

  3. 77.组合 | 40.组合总和II | 39.组合总和 | 784.字母大小写全排列

    77.组合 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合. 你可以按 任何顺序 返回答案. 示例 1: 输入:n = 4, k = 2 输出: [   [2,4], ...

  4. 【784. 字母大小写全排列】

    来源:力扣(LeetCode) 描述:   给定一个字符串 s ,通过将字符串 s 中的每个字母转变大小写,我们可以获得一个新的字符串. 返回 所有可能得到的字符串集合 .以 任意顺序 返回输出. 示 ...

  5. 784.字母大小写全排列

    给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串.返回所有可能得到的字符串集合. 示例: 输入: S = "a1b2" 输出: ["a1 ...

  6. 784. 字母大小写全排列

    链接:https://leetcode-cn.com/problems/letter-case-permutation/ 题解:如果是字母,存在改为变为大/小写,和当前情况dfs往下情况 这一类涉及排 ...

  7. 文巾解题 784. 字母大小写全排列

    1 题目描述 2 解题思路:回溯 如果解决一个问题有多个步骤,每一个步骤有多种方法,题目又要我们找出所有的方法,可以使用回溯算法:         回溯算法是在一棵树上的 深度优先遍历(因为要找所有的 ...

  8. 字母大小写全排列C语言,14种模式解决面试算法编程题(PART II)

    写在前面 8.树的宽度优先搜索(Tree BFS) 该模式基于广度优先搜索(BFS)技术来遍历树,并使用队列在跳到下一层之前记录下该层的所有节点.使用这种方法可以有效地解决涉及以逐级顺序遍历树的任何问 ...

  9. 1、LeetCode784 字母大小写全排列

    LeetCode784 字母大小写全排列 给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串.返回所有可能得到的字符串集合. 示例: 输入:S = "a1b2 ...

  10. Java——字母大小写全排列

    题目链接 字母大小写全排列 题目描述 给定一个字符串 s ,通过将字符串 s 中的每个字母转变大小写,我们可以获得一个新的字符串. 返回 所有可能得到的字符串集合 .以 任意顺序 返回输出. 题目示例 ...

最新文章

  1. 这位北大CS硕士小老弟,简直是“卷怪”!
  2. Android --- SharePreference 存储与数据库存储的效率分析
  3. 【编译打包】tengine 1.5.2
  4. SQL递归查询(with cte as)
  5. 用Python实现黑客帝国代码雨效果
  6. dsp31段最佳调音图_均衡器如何使用_31段均衡器调整方法
  7. 世界最小的QI标准无线充电接收模块,亲测不错。
  8. 微信小程序--瀑布流
  9. 太阳系行星运行图-java多媒体实验
  10. 2019年 腾讯校园招聘JAVA
  11. cba篮球暂停次数和时间_CBA在比赛时,为什么有“官方暂停”?
  12. 天才作文-不知道有没有人发过 很有才
  13. [转载] 晓说——第32期:抗战史上最悲壮一幕 淞沪战役(上)
  14. 河南省普通高中学业水平测试计算机,河南省普通高中信息技术学业水平测试综合测试题3(有答案)...
  15. 计算机无法搜索到打印机驱动,电脑连接打印机需要装什么驱动(电脑搜不到打印机设备)...
  16. 奶制品生产与销售matlab,奶制品生产和销售
  17. ztree 树形菜单结构转JSON
  18. KeyError: ‘label‘
  19. 2015年 行人检测总结4
  20. LNK2026 模块对于 SAFESEH 映像是不安全的原因以及解决方法

热门文章

  1. 获取程序进程并杀死该进程集
  2. memset 和 memcpy 和 memcmp (strncmp遇到\0会中断)
  3. centos7下Jenkins管理员admin密码忘记后处理方法
  4. 让一让,神州泰岳要进化了
  5. 12.01 晚 心情 阴雨 既然能力支撑不起自己的野心就先沉下心来努力学习好让有一天重新出现在江湖大放光芒...
  6. linux-优化内核参数 /etc/sysctl.conf
  7. 如何改变Myeclipse编辑区背景色(转)
  8. Linux常用的配置文件
  9. 删除IE 下输入后的清除小叉叉
  10. ASP.NET AJAX:Ajax验证(ajax+Handler处理)