private static void updateMarkDeg(ArrayList<Pair> res,
			HashMap<Integer, Pair> not, HashMap<Integer, Pair> candidate,
			DegList deglist, Pair y,DegList prunablelist,HashMap<Integer,Pair>prunablenot) {
		HashSet<Integer> adj = oneLeap.get(y.point);
		// 点y加入结果集中,导致res和not集中与y相邻的点的度数减1
		for (Pair r : res) {
			if (adj.contains(r.point))
				r.cdeg--;
		}
		if (not.size() < adj.size()) {
			for (Pair n : not.values()) {
				if (adj.contains(n.point))
					n.cdeg--;
			}
		} else {
			Pair p;
			for (Integer a : adj) {
				p = not.get(a);
				if (p != null) {
					p.cdeg--;
				}
			}
		}

		// 将y从候选点中移除
		ArrayList<Node> toerase = new ArrayList<Node>();
		Node aimnode = candidate.get(y.point).node;
		aimnode.points.remove(y.point);
		candidate.remove(y.point);
		if (aimnode.points.isEmpty())
			deglist.remove(aimnode);

		cal(candidate,adj,deglist);
		cal(prunablenot,adj,prunablelist);

	}