|
|
AlgorithmAnalysis
ListUtilities.java
package cusack.algorithms.util;
import java.util.List;
/**
* Some simple utility methods that insert elements into various positions in arrays
* and lists. They are only here as a convenience to run some tests.
* @author cusack
*
*/
public class ListUtilities {
//--------------------------------------------------------------
// Insert at the beginning
public static void insertAtBeginning(int[] list, int size, int value) {
for (int j = size; j > 0; j--) {
list[j] = list[j - 1];
}
list[0] = value;
}
public static void insertAtBeginning(Object[] list, int size, int value) {
for (int j = size; j > 0; j--) {
list[j] = list[j - 1];
}
list[0] = value;
}
public static void insertAtBeginning(List list, int size, Object value) {
list.add(0, value);
}
//--------------------------------------------------------------
// Insert in the middle
public static void insertInMiddle(int[] list, int size, int value) {
for (int j = size; j > size / 2; j--) {
list[j] = list[j - 1];
}
list[size / 2] = value;
}
public static void insertInMiddle(Object[] list, int size, Object value) {
for (int j = size; j > size / 2; j--) {
list[j] = list[j - 1];
}
list[size / 2] = value;
}
public static void insertInMiddle(List list, int size, Object value) {
list.add(list.size()/2, value);
}
//--------------------------------------------------------------
// Insert at end
public static void insertAtEnd(int[] list, int size, int value) {
list[size] = value;
}
public static void insertAtEnd(Object[] list, int size, Object value) {
list[size] = value;
}
public static void insertAtEnd(List list, int size, Object value) {
list.add(value);
}
}
|