Алгоритмы Java реализованы в C или в Java? - PullRequest
5 голосов
/ 24 ноября 2011

Я знаю, что реализация сортировки (timsort) в python реализована в C для повышения производительности. Это также относится к реализации Java или все алгоритмы Java реализованы в Java?

Ответы [ 5 ]

6 голосов
/ 24 ноября 2011

Большая часть стандартной библиотеки обычно реализована на Java.Тем не менее, многие функции, связанные с ОС или платформой, должны быть реализованы в «нативном» коде, поэтому хороший процент также обычно пишется на C и / или C ++.Конечно, он немного зависит от конкретной реализации JVM.

Типичные функциональные возможности, реализованные на языках, отличных от Java, включают многопоточность, сетевой ввод-вывод, файловый ввод-вывод и низкоуровневый API пользовательского интерфейса.Обратите внимание, что все это довольно специфичные низкоуровневые функции - более абстрактные / общие алгоритмы идеально подходят для реализации в Java и, следовательно, обычно.

4 голосов
/ 24 ноября 2011

Большая часть библиотеки Java реализована на Java, включая алгоритм сортировки

1 голос
/ 24 ноября 2011

Если вы посмотрите на источники java.util.Arrays.sort(), вы увидите, что алгоритм сортировки реализован на Java.Однако это не обязательно означает, что все остальные алгоритмы также.

1 голос
/ 24 ноября 2011

Насколько я знаю, они реализованы на Java. Здесь вы можете найти информацию об этом.

1 голос
/ 24 ноября 2011

Ответ: это зависит от фактической реализации JVM и типа алгоритма.Большинство общепринятых стандартных API-алгоритмов написаны на языке Java.Одно исключение наверняка - планирование потоков.

...