public void qsort1 (int[] a, int p, int r) { // 0个或1个元素,返回 if (p >= r) { return; } // 选择左端点为pivot int x = a[p]; int j = p; for (int i = p + 1; i <= r; i++) { // 小于pivot的放到左边 if (a[i] < x) { swap (a, ++j, i); } } // 交换左端点和pivot位置 swap (a, p, j); // 递归子序列 qsort1 (a, p, j - 1); qsort1 (a, j + 1, r); }
初级程序员
by: 我的程序员之路 发表于:2013-05-05 20:26:41 顶(0) | 踩(0) 回复
比较简洁啊,自己以前用C写过,不过代码量比这多了看来我还需要修炼啊
回复评论