我对编程珍珠有疑问
问题在于
展示如何使用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);
}
我需要以下内容:
答案 0 :(得分:0)
它在Java中基本相同。如果您了解Java,我认为这不应该花费几分钟来移植。我相信我们非常乐意给你一些关于算法如何运作的指示,但我想先看看你的一些工作。拿一支铅笔和一些纸,然后跟踪代码。这将是你递归的最佳选择。