NavigableMap против SortedMap?

Есть ли причина использовать SortedMap вместо NavigableMap , кроме версии JVM? ( NavigableMap существует только с версии 1.6; SortedMap существует с 1.2)

Я пытаюсь найти значение с наибольшим ключом, такое, что ключ SortedMap (если бы это было строго headMap () , а затем lastKey () , а затем get () ), но NavigableMap.floorEntry () , похоже, именно то, что мне нужно.


пояснение: просто в качестве примера я Я обрабатываю редкие диапазоны номеров версий с разными моделями поведения. Ключи могут быть [0, 2, 5], так что номера версий 0 и 1 обрабатываются значением в ключе # 0, номера версий 2-4 обрабатываются значением в ключе № 2, а номера версий> = 5. обрабатываются значением в ключе # 5. Мне удалось сделать единственный рекурсивный факториал. def factorial (n): if n == 0: return 1 else: return n * ...

Я очень долго не мог ответить на этот вопрос. Мне удалось создать единственный рекурсивный факториал.

def factorial(n):
     if n == 0:
         return 1
     else:
         return n * factorial(n-1)

Двойной факториал Для четного целого числа n двойной факториал - это произведение всех четных положительных целых чисел, меньших или равных n. Для нечетного целого числа p двойной факториал - это произведение всех нечетных натуральных чисел, меньших или равных p.

Если n четно, то n !! = n * (n - 2) * (n - 4) * (n - 6) * ... * 4 * 2

Если p нечетное, то p !! = p * (p - 2) * (p - 4) * (p - 6) * ... * 3 * 1

Но я понятия не имею, как сделать двойной факториал. Нужна помощь?

5
задан kindall 19 January 2011 в 20:16
поделиться