数据结构与算法工具类自用(不定时更新)

目前针对基础的整数排序问题和数组较为实用。

public class AlgoUtils {

	/**
	 * 对数器, 返回int数组
	 * @param maxLen 数组长度范围[0, maxLen-1]
	 * @param maxValue 数组元素值范围[0, maxValue-1]
	 * @return int[]
	 */
	public static int[] LogarithmicDetector(int maxLen, int maxValue) {
		int len = (int)(Math.random() * maxLen);
		int[] ans = new int[len];
		for (int i = 0; i < len; i++) {
			ans[i] = (int)(Math.random() * maxValue);
		}
		return ans;
	}

	/**
	 * 复制一个数组的值
	 * @param arr 数组
	 * @return
	 */
	public static int[] copyArray(int[] arr) {
		int[] ans = new int[arr.length];
		for (int i = 0; i < arr.length; i++) {
			ans[i] = arr[i];
		}
		return ans;
	}

	/**
	 * arr1 与 arr2 等长
	 * @param arr1
	 * @param arr2
	 * @return
	 */
	public static boolean equalArray(int[] arr1, int[] arr2) {
		for (int i = 0; i < arr1.length; i++) {
			if (arr1[i] != arr2[i]) {
				return false;
			}
		}
		return true;
	}


	public static void printArray(int[] arr) {
		StringBuilder sb = new StringBuilder();
		sb.append("[ ");
		for (int i = 0; i < arr.length; i++) {
			sb.append(arr[i]);
			if (i != arr.length - 1) {
				sb.append(", ");
			}
		}
		sb.append(" ]");
		System.out.println(sb.toString());
	}
}
posted @ 2022-04-23 01:17  cee_nil  阅读(39)  评论(0编辑  收藏  举报