第十二章:排序
面试题74:合并区间
题目
参考代码
public int[][] merge(int[][] intervals) {
Arrays.sort(intervals, (i1, i2) -> i1[0] - i2[0]);
List<int[]> merged = new LinkedList<>();
int i = 0;
while (i < intervals.length) {
int[] temp = new int[] {intervals[i][0], intervals[i][1]};
int j = i + 1;
while (j < intervals.length && intervals[j][0] <= temp[1]) {
temp[1] = Math.max(temp[1], intervals[j][1]);
j++;
}
merged.add(temp);
i = j;
}
int[][] result = new int[merged.size()][];
return merged.toArray(result);
}面试题75:数组相对排序
题目
参考代码
面试题76:数组中第k大的数字
题目
参考代码
面试题77:链表排序
题目

参考代码
面试题78:合并排序链表
题目

参考代码
解法一
解法二
Last updated