Java(利用数组模拟双向回环链表)解决数三去一问题

代码以下:java

public class Count3Quit {
	public static void main(String[] args) {
		
		//用数组模拟双向回环链表
		int[] arr = new int[500];
		for (int i = 0; i < arr.length; i++) {
			if (i < arr.length - 1) {
				arr[i] = i + 1;
			} else {
				arr[i] = 0;
			}
		}
		
		int index = 0;
		int count3Num = 0;
		int before = 0;
		while (arr[index] != index) {
			count3Num++;
			if (count3Num == 3) {
				count3Num = 0;
				arr[before] = arr[index];
			}
			before = index;
			index = arr[index];
		}

		System.out.println(arr[index]);
		System.out.println(index);
}
相关文章
相关标签/搜索