2010-06-09 2 views
0

у меня есть вопрос от программирования жемчугавопрос abouut строки вроде

проблема следующая

показать, как использовать схему разбиения Lomuto для сортировки различной длины строки битов во времени, пропорциональной сумме их длины

и алгоритм следующие

каждой записи в х [0..n-1] имеет длину целое и указатель на битовый массив [0..length-1] код

void bsort(l,u,depth) 
{ 
    if (l>=u) return; 

    for (int i=l;i<u;i++) 
    if (x[i].length<depth) 
     swap(i,l++); 

    m=l; 
    if (x[i].bit[depth] == 0) swap(i,m++); 
    bsort(l,m-1,depth+1); 
    bsort(m,u,depth+1); 
} 

мне нужны следующие вещи:

  1. как этот алгоритм работает
  2. как реализовать в Java?
+1

Я переформатировал МОСТ из записи, если вы хотите, чтобы люди приложили усилия к ответу, по крайней мере, приложите некоторое усилие в вопросе. –

ответ

0

Практически это почти то же самое на Java. Если вы знаете Java, который, я полагаю, это не займет больше нескольких минут для порта. Я уверен, что мы были бы более чем рады дать вам несколько указаний относительно того, как работает алгоритм, но сначала я хотел бы увидеть некоторые работы. Возьмите карандаш и бумагу и проследите код. Это будет ваш лучший выбор с рекурсией.

+0

Да, но я не понимаю сам алгоритм –

+0

Это домашнее задание? –

+0

Я не знаю, что вы называете домашней работой, я изучаю себя –

Смежные вопросы