1. Objective C / Говнокод #18364

    −394

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    + (NSArray *)orderDBFilePaths:(NSArray *)paths {
        NSMutableDictionary *dictionary = [NSMutableDictionary new];
        
        for (NSString *path in paths) {
            if ([path hasSuffix:@"-shm"]) {
                [dictionary setObject:path forKey:@2];
            } else if ([path hasSuffix:@"-wal"]) {
                [dictionary setObject:path forKey:@1];
            } else {
                [dictionary setObject:path forKey:@0];
            }
        }
        
        return @[dictionary[@0], dictionary[@1], dictionary[@2]];
    }

    Сортировка фалов *.sqlite* в порядке *.sqlite, *.sqlite-wal, *.sqlite-shm для бэкапа правильного рестора бэкапа в коде 4х летней давности.

    Запостил: Drenwtc, 18 Июня 2015

    Комментарии (4) RSS

    • что не так, смеяться что 4 года назад?
      Ответить
      • Видимо, автор угарает, что использовался bucket sort с O(N) времени и O(N) памяти, когда можно было применить решение Dutch national Flag Problem с O(N) времени и O(1) памяти
        Ответить
      • Скорее над тем, что это Objective C
        Ответить

    Добавить комментарий