删除结点

版权声明:转载请说明去处,文章仅供学习参考 https://blog.csdn.net/qq_38487155/article/details/86300858
package Linear;
/*
 * 删除结点:删除一无头结点,长度大于1的循环链表中p指向结点的前缀结点。
 */
public class G {
	public static void deleteNode(Node p) {
		Node q =p.next;
		Node pre=p;
		while (q.next!=p) {
			q=q.next;
			pre=pre.next;
		}
		pre.next=q.next;
		q=null;
	}
	public static void main(String[] args) {
		Node p =NodeTool.CreateNodeList("abcdef");
		NodeTool.changeNodeList(p);
		NodeTool.traverseLoopList(p);
		Node h=p;
		System.out.println("---------------------");
		p=p.next;
		p=p.next;
		p=p.next;
		deleteNode(p);
		NodeTool.traverseLoopList(h);
	}

}

猜你喜欢

转载自blog.csdn.net/qq_38487155/article/details/86300858