论坛首页 Java企业应用论坛

某互联网公司面试题(二)

浏览 12802 次
精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-06-07  
这是百度的题
0 请登录后投票
   发表时间:2011-06-07  

完全看不懂啊
学习学习啊
0 请登录后投票
   发表时间:2011-06-07  
别去百度浪费大好青春。。。
0 请登录后投票
   发表时间:2011-06-07  
这些题目看着好难。。。。
0 请登录后投票
   发表时间:2011-06-07  
Durian 写道
这样的题没啥意义。
除非你喜欢信息奥林匹克竞赛题。

普通的数据结构习题,信息奥林匹克不知道比这难多少倍

0 请登录后投票
   发表时间:2011-06-07  
支持hashMap说法.遍历是必须的.只是需要多余空间的支持.
0 请登录后投票
   发表时间:2011-06-08   最后修改:2011-06-08
两层循环,如果内层循环的节点有等于外层循环的节点的,说明有环,后续分享代码:

public class TestCircularList {
	static class Node<T> {
		T value;
		Node<T> next;

		Node(Node<T> next, T value) {
			this.value = value;
			this.next = next;
		}

	}

	public static Node<Integer> generateLinkList(int number) {
		Node<Integer> t = new Node<Integer>(null, 0);
		Node<Integer> temp = t;
		Node<Integer> temp1 = null;
		for (int i = 1; i < number; i++) {
			temp1 = new Node<Integer>(null, i % number);
			temp.next = temp1;
			temp = temp1;
		}
		temp.next = t.next.next.next;// construct circular linked list
		return t;
	}

	public static void main(String[] args) {
		Node<Integer> node = TestCircularList.generateLinkList(10);
		TestCircularList.traverse(node, 10);
	}

	/**
	 * 
	 * @param <T>
	 * @param node
	 *            the head node
	 * @param length
	 *            the actural number of nodes of the linked list
	 */
	public static <T> void traverse(Node<T> node, int length) {
		Node<T> temp = node;
		Node<T> temp1 = null;
		while (temp != null) {
			temp1 = temp.next;
			int tailIndex = --length;
			while (temp1 != null && tailIndex != 0) {
				if (temp1 == temp) {
					System.out.println("has rings!");
					System.out.println("Begin node value: " + temp.value);
					while (temp.next != temp1) {
						System.out.println(temp.next.value);
						temp = temp.next;
					}
					System.out.println("End node value: " + temp.value);
					return;
				}
				temp1 = temp1.next;
				tailIndex--;
			}
			temp = temp.next;
		}
	}
}

似乎和找出一个List里两个值相同的元素的索引是一个解法,只不过这里是比较两个节点的相等(内存地址相同),再思考。
0 请登录后投票
   发表时间:2011-06-08  
菜鸟从中飞过,,,。心慌慌。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics