美文网首页
iOS算法之删除重复连续的字符

iOS算法之删除重复连续的字符

作者: 齊同学 | 来源:发表于2019-06-19 13:41 被阅读0次

iOS面试常见的算法题、自己面试遇到的、希望能帮到大家、有错误欢迎指正

删除给定字符串中重复连续的字符。如“aaabccdeeeeeghkccc” ->“abcdeghkc”

一、OC方法

- (NSString *)removeDuplicate:(NSString *)input {
    
    NSMutableString *string = [NSMutableString stringWithFormat:@"%@", input];
    
    for (int i = 0; i < string.length - 1; i++) {
        
        for (int j = i+1 ; j < string.length; j++) {
            
            NSString *str1 = [string substringWithRange:NSMakeRange(i, 1)];
            NSString *str2 = [string substringWithRange:NSMakeRange(j, 1)];
            
            if ([str1 isEqualToString:str2]) {
                [string deleteCharactersInRange:NSMakeRange(j, 1)];
                j--;
            } else {
                break;
            }
        }
    }
    NSLog(@"删除后得到字符串===============%@",string);
    
    return  string;
    
}

二、swift方法

func removeDuplicate( input :String) -> String {

        var strResult:String = ""
        //字符串转数组
        var array = input.map { String($0) }
  
        for i in 0..<array.count {

            var j = i + 1
            
            while j < array.count{
                let str1 = array[i]
                let str2 = array[j]
                if str1 == str2 {
                    array.remove(at: j)
                    j = j-1
                }else{
                    break
                }
                j = j + 1
            }

        }
        
        //数组转字符串
        strResult = array.joined()
        
        print("删除后得到字符串===============\(strResult)")
        
        return strResult
    }

相关文章

  • iOS算法之删除重复连续的字符

    iOS面试常见的算法题、自己面试遇到的、希望能帮到大家、有错误欢迎指正 删除给定字符串中重复连续的字符。如“aaa...

  • 文章收藏

    iOS面试题系列之常见算法 排序算法整理 字符串【3】最长回文子串【3】最长无重复子串【1*】字符串转数字【4】K...

  • 2018-11-06 面试手撕代码题

    字符串变成整型数字 取出字符串中连续重复的字符,只保留一个 取出字符串中间的重复空格 常见排序算法 三种简单排序:...

  • LeetCode刷题-删除字符串中的所有相邻重复项

    前言说明 算法学习,日常刷题记录。 题目连接 删除字符串中的所有相邻重复项[https://leetcode-cn...

  • iOS 字符串截取、iOS 字符串替换、iOS 字符串分隔、iO

    iOS之字符串截取、iOS 字符串替换、iOS字符串分隔、iOS之字符串匹配、截取字符串、匹配字符串、分隔字符串 ...

  • BAT面试算法进阶(4)- 无重复字符的最长子串(滑动法优化+A

    BAT面试算法进阶(3)- 无重复字符的最长子串(滑动窗口法)BAT面试算法进阶(2)- 无重复字符的最长子串(暴...

  • No repeats please

    把一个字符串中的字符重新排列生成新的字符串,返回新生成的字符串里没有连续重复字符的字符串个数.连续重复只以单个字符...

  • No repeats please

    把一个字符串中的字符重新排列生成新的字符串,返回新生成的字符串里没有连续重复字符的字符串个数.连续重复只以单个字符...

  • 【Javascript】No Repeats Please

    把一个字符串中的字符重新排列生成新的字符串,返回新生成的字符串里没有连续重复字符的字符串个数.连续重复只以单个字符...

  • No repeats please(待解)

    要求 把一个字符串中的字符重新排列生成新的字符串,返回新生成的字符串里没有连续重复字符的字符串个数.连续重复只以单...

网友评论

      本文标题:iOS算法之删除重复连续的字符

      本文链接:https://www.haomeiwen.com/subject/ryohqctx.html