由于数组和LinkedList数据结构不同,所以采用了不同的算法。
/**
* @Title: reverseList
* @Description: LinkedList反转
* @param list
* @return 参数
* @throws
*/
public static LinkedList<Integer> reverseList(LinkedList<Integer> list) {
if (list == null) {
throw new NullPointerException("无法翻转空列");
}
if (list.size() == 1) {
return list;
}
int i = list.removeFirst();
reverseList(list).add(i);
return list;
}
/**
* @Title: reverseArray
* @Description: 数组反转
* @param array
* @return 参数
* @throws
*/
public static int[] reverseArray(int[] array) {
for (int i = 0; i < array.length / 2; i++) {
int temp = array[i];
array[i] = array[array.length - 1 - i];
array[array.length - 1 - i] = temp;
}
return array;
}