dailiuyang123 / NoteBook

笔记本
2 stars 0 forks source link

LeetCode_String #4

Open dailiuyang123 opened 2 years ago

dailiuyang123 commented 2 years ago

leetcode 字符串类

https://leetcode-cn.com/problems/is-unique-lcci/

dailiuyang123 commented 2 years ago

实现一个算法,确定一个字符串 s 的所有字符是否全都不同。

  public boolean uniqueStr(String astr){
        for (int i=0;i<astr.length();i++){
            if (astr.lastIndexOf(astr.charAt(i))!=i){
                return false;
            }
        }
        return true;
    }
dailiuyang123 commented 2 years ago

给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。

public boolean CheckPermutation(String s1, String s2) {
        if (s1.length() != s2.length()) {
            return false;
        }
        char[] c1 = s1.toCharArray();
        char[] c2 = s2.toCharArray();
        Arrays.sort(c1);
        Arrays.sort(c2);
        return Arrays.equals(c1,c2);
    }
dailiuyang123 commented 2 years ago

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

public boolean canPermutePalindrome(String s) {
        if(s == null){
            return false;
        }
        char[] chars = s.toCharArray();
        Set<Character> set = new HashSet<>();
        for(char c : chars){
            if(set.contains(c)){
                set.remove(c);
            }else{
                set.add(c);
            }
        }
        return set.size() <= 1;
    }