题目
引用数组:按字典序输出多个单词
思路
本题读入多个单词,按字典序排序后输出(引用数组 + qsort)。 字符串存缓冲区,char *ptrs[] 保存每个串的起始地址;比较函数里对 strcmp(*a,*b) 排序,再按序打印。
解题分析
引用数组元素是 char*,排序交换引用比交换字符串内容更轻。比较用 strcmp。C 标准库 Arrays.sort 配合 Comparator 也可排序引用数组,比较函数接收 const void*。
完整程序
import java.io.*;
public class Main {
public static void main(String[] args) {
String[] w = new String[3];
for (int i = 0; i < 3; i++) w[i] = "pear";
Arrays.sort(w);
for (int i = 0; i < 3; i++) System.out.println(w[i]);
}
}
运行示例
输出:
apple
fig
pear