C语言面试题之判定字符是否唯一

判定字符是否唯一

实例要求

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

实例分析

  • 1、使用一个大小为 256 的bool数组 charSet 来记录字符是否出现过;
  • 2、遍历字符串时,如果字符已经在数组中标记过,则返回 false;
  • 3、否则标记该字符为已出现;
  • 4、最终返回 true 表示字符串中的所有字符都不同;

示例代码

c 复制代码
bool isUnique(char* astr){
    if (astr == NULL) {
        return true; // 空字符串视为所有字符都不同
    }

    bool charSet[256] = {false}; // 假设字符集为 ASCII

    while (*astr != '\0') {
        int val = (int)(*astr);
        if (charSet[val]) {
            return false; // 如果字符已经出现过,则返回 false
        }
        charSet[val] = true; // 标记字符已经出现过
        astr++;
    }

    return true; // 遍历完字符串,所有字符都不同
}

运行结果


  • ASCII码表
相关推荐
qq_537562672 分钟前
跨语言调用C++接口
开发语言·c++·算法
wjs202412 分钟前
DOM CDATA
开发语言
一点程序12 分钟前
基于SpringBoot的选课调查系统
java·spring boot·后端·选课调查系统
Tingjct14 分钟前
【初阶数据结构-二叉树】
c语言·开发语言·数据结构·算法
C雨后彩虹15 分钟前
计算疫情扩散时间
java·数据结构·算法·华为·面试
2601_9498095918 分钟前
flutter_for_openharmony家庭相册app实战+我的Tab实现
java·javascript·flutter
猷咪40 分钟前
C++基础
开发语言·c++
IT·小灰灰41 分钟前
30行PHP,利用硅基流动API,网页客服瞬间上线
开发语言·人工智能·aigc·php
快点好好学习吧43 分钟前
phpize 依赖 php-config 获取 PHP 信息的庖丁解牛
android·开发语言·php
秦老师Q44 分钟前
php入门教程(超详细,一篇就够了!!!)
开发语言·mysql·php·db