一道面试题:从一个字符串中找出第一个不重复字符(object -c 实现)

NSString *tempstr = @"abbbccdefafgg";
//首先就是遍历数组的啦
    NSMutableArray *arrm = [NSMutableArray array];
    for ( int i = 0 ; i < tempstr.length; i++) {
        NSRange range = NSMakeRange(i, 1);
        NSString *temp1str = [tempstr substringWithRange:range];
       
        [arrm addObject:temp1str];
    }
//    NSLog(@"%@",arrm);把每个子字符串放到数组中的啦
   
    for (int i = 0 ; i<arrm.count; i++) {//在从数组中找出重复只的啦
    //这里的思路是这样:通过使用数组中每个字符串切割tempstr这个完整的字符串。然后返回给temparr这个数组,如果     
    //这个数组的count成员数是2意味着该字符在tempstr这个字符串中有且只有一个,之后打印第一个粗现的字符就可以了    
    //(我又特么卖萌了,罪过!!)
        NSArray *temparr = [tempstr componentsSeparatedByString:arrm[i]];
        if (temparr.count == 2)
        {
            NSLog(@"%@",arrm[i]);
        }
        
    }
 //结果打印为:
    2015-05-25 21:35:22.747 test[7238:123264] d
    2015-05-25 21:35:22.748 test[7238:123264] e

转载于:https://my.oschina.net/wupengnash/blog/419840

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值