Есть несколько шагов, связанных с этой проблемой:
Сортировка массива по частоте.
def wordCount(self,nums):
nums = "Hello, number of transaction which happened, for,"
nums=nums.lower().translate(None,string.punctuation).split()
d = {}
for i in nums:
if i not in d:
d[i] = 1
else:
d[i] = d[i]+1
sorted_d = (sorted(d.items(), key = operator.itemgetter(1), reverse = True)
for key,val in sorted_d:
print key,val
Похоже, что у них нет каких-либо CF-библиотек, но спецификация API хорошо документирована , поэтому нет причин, по которым вы не можете интегрироваться с ней.
В Google Code есть проект, который хочет создать библиотеку .NET для API OpenStreetMap. На веб-сайте указано, что в настоящее время существует альфа-версия, поэтому, возможно, стоит ее проверить: code.google.com/p/openstreetmapnet
И еще есть два похожих проекта на CodePlex: osmscout.codeplex.com gmap4dotnet.codeplex.com
Может быть, их можно использовать и в Compact Framework, или вы можете попросить проектные группы добавить эту функцию (или принять участие, это все-таки открытый исходный код)
CloudMade предоставляет API для встраивания карт OpenStreetMap на многих языках, но не на .NET на момент написания. Доступны простые HTTP API для листов карты, которые можно вызывать из программ .NET, но это, конечно, довольно низкоуровневый.
API CloudMade предназначены для разработчиков, которые хотят встраивать выходные данные OSM в свои проекты, а не OSM API, предназначенный для создания карт, поэтому я думаю, что вас могут заинтересовать материалы CloudMade.
См. http://developers.cloudmade.com/projects для получения дополнительной информации.
Я разработал компонент CF, который может загружать плитки OpenStreetMap, а также прокладывать точки интереса и основные маршруты. В зависимости от ваших требований и любых ограничений лицензий, которые вам разрешено использовать, он может быть вам полезен?