784. Letter Case Permutation

Posted tobeabetterpig

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了784. Letter Case Permutation相关的知识,希望对你有一定的参考价值。

class Solution {
    public List<String> letterCasePermutation(String S) {
      List<String> result = new ArrayList<>();
      char[] array = S.toCharArray();
      dfs(array, result, 0);
      return result;
    }
    
    private void dfs(char[] array, List<String> result, int index){
      if( index == array.length){
        result.add(new String(array));
        return;
      }
      
      if( Character.isLetter(array[index])){
        array[index] = Character.toLowerCase(array[index]);
        dfs( array, result, index + 1);
        array[index] = Character.toUpperCase(array[index]);
        dfs( array, result, index + 1);
      }else{
        dfs(array, result, index + 1);
      }
    }
}

 

以上是关于784. Letter Case Permutation的主要内容,如果未能解决你的问题,请参考以下文章

784. Letter Case Permutation

784. Letter Case Permutation

784. Letter Case Permutation

784. Letter Case Permutation - Easy

LeetCode 784. Letter Case Permutation (字母大小写全排列 )

784. Letter Case Permutation---back tracking