关于字符串排序的问题

时间:2010-06-09 06:08:36

标签: algorithm

我对编程珍珠有疑问

问题在于

  

展示如何使用Lomuto的分区方案按时间长度对不同长度的位串进行排序

和算法正在关注

x [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 :(得分:0)

它在Java中基本相同。如果您了解Java,我认为这不应该花费几分钟来移植。我相信我们非常乐意给你一些关于算法如何运作的指示,但我想先看看你的一些工作。拿一支铅笔和一些纸,然后跟踪代码。这将是你递归的最佳选择。