【数据结构与算法】之判断字符是否唯一

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

一、题目要求
  • 示例 一:
	输入: s = "leetcode"
	输出: false 
  • 示例 二:
	输入: s = "abc"
	输出: true
  • 限制:
	0 <= len(s) <= 100
二、 示例算法
  • 实现示例一(Swift):
    遍历字符串,每次遍历去除首字母,然后查询剩余字符串里是否有去除掉的这个首字母;
	func isUnique(_ astr: String) -> Bool {
    
    
        var s = astr
        for subS in s {
    
    
            s.removeFirst()
            if s.contains(subS) {
    
    
                return false
            }
        }
        return true
    }
  • 实现示例二( C ):
    第i个字符,与i+1及其之后的字符比较,如果发现相同的直接返还false, 整个循环结束都没有false返还则表示全部都不一样,返还true;
	bool isUnique(char* astr){
    
    
	    int cnt = 0, i, j;
	    cnt = strlen(astr);
	    for (i = 0; i < cnt - 1; i++)
	        for (j = i + 1; j < cnt; j++)
	            if(astr[i] == astr[j])
	                return false;
	    return true;
	}
  • 实现示例三(C++):
	bool isUnique(string astr) {
    
    
        for (int i = 0; i < astr.length(); ++i) {
    
    
            for (int j = i+1; j < astr.length(); ++j) {
    
    
                if (astr[i] == astr[j])
                	return false;
            }
        }
        return true;
    }

猜你喜欢

转载自blog.csdn.net/Forever_wj/article/details/108632546