Поиск по списку целых чисел - PullRequest
0 голосов
/ 25 июля 2011

В приложении для iOS я беру у пользователя четырехзначный код и даю ему соответствующую строку в TextView. Мой вопрос заключается в том, что из-за того, что пользователь проверяет около тысячи возможных кодов, какой эффективный способ дать результат без огромного оператора if или switch? Например, используя plist, txt файл или даже базу данных .... Заранее спасибо

Ответы [ 2 ]

1 голос
/ 25 июля 2011

Решение plist, текстового файла или базы данных - это вопрос хранения, а не поиска.Лично я бы просто использовал файл JSON, поскольку он достаточно хорошо поддерживается как человеческим мозгом, так и программным обеспечением.Для поиска просто поместите их в NSDictionary и выполните поиск по этому вопросу.Если ваши элементы не очень большие, 1000 элементов на самом деле не большой набор данных, даже на iPhone с ограниченным объемом памяти.Даже если каждый элемент имеет размер 1 КБ (что звучит намного больше, чем набор данных, который вы описываете), для всего набора вы смотрите меньше мегабайта.затем сохраните длинный текст в файле и сохраните URL-адрес файла в таблице поиска вместо всей строки.IIRC, URL-адрес составляет в среднем около 100 байт, а NSNumber - около 8, так что для всего набора данных вы будете искать около 108 КБ.

1 голос
/ 25 июля 2011

Учитывая количество возможных кодов, я бы порекомендовал Базовые данные . В качестве альтернативы вы можете использовать SQLite напрямую. Вы могли бы использовать plist, но я боюсь, что он быстро станет неуправляемым при добавлении, удалении и обновлении кодов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...