Sort characters in NSString into alphabetical order

前端 未结 4 1126
醉话见心
醉话见心 2020-12-10 15:57

I\'m trying to re-arrange words into alphabetical order. For example, tomato would become amoott, or stack would become ackst.

I\'ve found some methods to do this in

4条回答
  •  半阙折子戏
    2020-12-10 16:42

    // --------- Function To Make an Array from String
    NSArray *makeArrayFromString(NSString *my_string) {
        NSMutableArray *array = [[NSMutableArray alloc] init];
        for (int i = 0; i < my_string.length; i ++) {
            [array addObject:[NSString stringWithFormat:@"%c", [my_string characterAtIndex:i]]];
        }
        return array;
    
    }
    
    // --------- Function To Sort Array
    NSArray *sortArrayAlphabetically(NSArray *my_array) {
        my_array= [my_array sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];
        return my_array;
    }
    
    // --------- Function Combine Array To Single String
    NSString *combineArrayIntoString(NSArray *my_array) {
        NSString * combinedString = [[my_array valueForKey:@"description"] componentsJoinedByString:@""];
        return combinedString;
    }
    
    
    
    
    // Now you can call the functions as in below where string_to_arrange is your string
        NSArray *blowUpArray;
        blowUpArray = makeArrayFromString(string_to_arrange);
        blowUpArray = sortArrayAlphabetically(blowUpArray);
        NSString *arrayToString= combineArrayIntoString(blowUpArray);
        NSLog(@"arranged string = %@",arrayToString);
    

提交回复
热议问题